Микроконтроллеры | TEX учится |
|
---|---|---|
Начну тему заново. Нашел документ (стр 9), но там еще непонятней. Объясните пожалуйста. |
|
|
А что там непонятного ? |
|
|
TEX, я делаю так: |
|
|
Эта схема неправильная, или я еще что-то не узнал об этих МК? У них же нога порта это "открытый коллектор", и применение индикатора с общим катодом невозможно, не так ли? Единица записанная в защелку порта превращает выход во вход. |
|
|
Любая нога порта 1 может выдать только 60 мкА при напряжении более 2.4 В. Как при этом будут светиться сегменты, и будут ли, непонятно, но формально схемотехника правильная. Порты имеют различную схемотехнику, например порт 0 явно пуш-пул, остальные имеют пулап резисторы, т.е. явно не ОК, детальнее можно посмотреть в документе 4316Е-051-01/07, с. 2-73 |
|
|
TEX: Эта схема неправильная, или я еще что-то не узнал об этих МК? Не скажу по поводу Атмелов и конкретно про указанный МК, но я делал аналогичную схему на PIC16, там выход через полевик подключается либо к земляной шине (0) либо к шине питания (1), допустимый ток на ножку обычно 25 мА (хотя в PIC18 есть отдельные ножки для которых максимальный ток в режиме выхода может быть всего 2 мА!). Есть еще допустимый ток на один порт (опять же у PICов, может быть 200 мА, может 95 мА) и ток шины Vdd и Vss. |
|
|
Сергей К: TEX, я делаю так: Попробовал двигать регистр самого порта, получилось довольно быстро. Всего 57 инструкций на передачу байта по SPI http://radiohlam.ru/forum/viewtopic.php?f=12&t=3467&sid=2f45195d85d9d8113a489d2f... |
|
|
помогите разобраться. нужно поморгать светиком по таймеру. регистр порта меняется а светик не моргает. /***************************************************** #include <tiny13.h> // Timer 0 output compare A interrupt service routine // Declare your global variables here void main(void) // Crystal Oscillator division factor: 1 // Input/Output Ports initialization // Timer/Counter 0 initialization // External Interrupt(s) initialization // Timer/Counter 0 Interrupt(s) initialization // Analog Comparator initialization // ADC initialization // Global enable interrupts while (1) где ошибка? |
|
|
Hamster: PINB.0 =~PINB.0; Попробуйте PORTB.0=~PORTB.0; |
|
|
Tadas: Не помогло. все так же На картинке видно что в порту единица, а светик не горит. |
|
|
Форум про радио — сайт, посвященный обсуждению электроники, компьютеров и смежных тем. pro-radio.online | Обратная связь |
© 2003—2024 |