Перейти к содержанию

Ilya Kirilov

Members
  • Постов

    4
  • Зарегистрирован

  • Посещение

    Никогда

Весь контент Ilya Kirilov

  1. Maxim, это лишнее наверное можно просто перемножить но я пока не знаю как, и еще я настроил порт с на выход, читаю с порта а, а на вход не настроил ) как я уже говорил я только начал изучать AVR и много еще не знаю и не понимаю, поэтому и решил спросить вдруг кто сможет помочь
  2. Lila, я написал примерно код, но он не работает ;**************************************** .include "m16def.inc" .def TMP_0 = r16 ; .def TMP_1 = r17 ; ;*********************************************** .cseg .org $000 rjmp Reset ; .org 0x0029 ; метка Reset за пределами векторов прерываний. Reset: ldi TMP_1,$FF ; PortC на out DDRC,TMP_1 ; выход. ldi TMP_0,low(RAMEND) ; указание ldi TMP_1,high(RAMEND) ; out SPL,TMP_0 ; out SPH,TMP_1 ; вершины стека. in TMP_0,PortA ; читаем PortA. andi TMP_0,0b11100000 ; маска. lsr TMP_0 ; сдвиг вправо на 1разряд. swap TMP_0 ; перестановка тетрад. in TMP_1,PortA ; читаем PortA. andi TMP_1,0b00011100 ; маска. lsr TMP_1 ; сдвиг вправо на 1разряд. lsr TMP_1 ; сдвиг вправо на 1разряд. mul TMP_0,TMP_1 ; сдвиг вправо на 1разряд. out PortC,r0 ; вывод результата
  3. Lila, проблема в написании кода я недавно начал работать в AVR
×
×
  • Создать...