![]() |
Главная Микроконтроллеры [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [ 20 ] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] соответствующего вектора прерывания. Другой способ очистпгь ACI - записать во флаг логическую единицу. Бит 3 - ACIE - разрешение прерывания ог аналогового компаратора. Когда установлен этот бит и бит I регис фа состояния, прерывания от аналогового компаратора отрабатываются. Если бит ACIE = О, прерывания запрещены. Бит 2 - ACIC - захват по выходу аналогового компаратора. Если этот бит установлен, функция захвата таймера/счетчика! управляется выходом аналогового компаратора. При этом выход компаратора подключается непосредственно к схеме обработки захвата, предоставляя удобные средства подавления шума и выбора фронта, предусмотренные прерыванием захвата по входу. Когда бит очищен, схема захвата и компаратор разъединены. Чтобы компаратор мог управлять функцией захвата таймера/счетчика!, должен быть установлен бит TICIE1 в регистре TIMCK. Биты 1,0 - ACIS1, ACISO - выбор режима прерывания аналогового компаратора. Различные установки приведены в табл. 2.14. Таблица 2.14. Установки ACIS1/ACIS0
2.10. Порты ввода/вывода Порт в Порт В 8-разрядный - двунаправленный для ввода/вывода. Для обслуживания порта отведено три регистра: регистр данных PORTB ($18, $38), регистр направления данных - DDRB ($17, $37) и выводы порта В ($16, $36). Адрес выводов порта В предназначен только для чтения, в то время как регистр данных и регистр направления данных - для чтения и записи. Все выводы порта имеют отдельно подключаемые подтягивающие резисторы. Выходы порта В могут поглощать ток до 20 мА и непосредственно управлять светодиодными индикаторами. Если выводы РВ0...РВ7 используются как входы и замыкаются на землю, то при включенных внутренних подтягивающих резисторов выводы являются источниками тока. Дополнительные функции выводов порта В приведены в табл. 2.15. Таблица 2.15. Альтернативные функции выводов порта В
При использовании альтернативных функций выводов регистры DDRB и PORTB должны быть установлены в соответствии с описанием альтернативных функщш. При использовании возможности внутрисхемного программирования микроконтроллера следует учитывать, что программатор использует для своей работы линии MOSI, MISO и SCK. Соответственно, устройства, подключенные к этим линиям, не должны мешать работе программатора. Бит 7 $16 ($38) Чт7зап. RW Нач. знач. О Еаш1шшшшгнп11[ш?1гнп?1[т1шзш PORTS R/W О R/W О R/W О R/W О RW О R/W О R/W О Рис. 2.47. Регистр данных порта В - PORTB
Рис. 2.48. Регистр направления данных порта В - DDRB
Рис. 2.49. Выводы порта В - PINB PINB не является регистром, по этому адресу осуществляется доступ к физическим значениям каждого из выводов порта В. При чтении PORTB читаются данные из регистра-защелки, при чтении PINB читаются логические значения, соответствующие фактическому состоянию выводов порта. Порт В как порт ввода/вывода общего назначения Все 8 битов порта В при использовании для ввода/вывода одинаковы. Бит DDBn регистра DDRB выбирает направление передачи данных. Если бит установлен (т. е. равен единице), вывод сконфигурирован как выход. Если бит сброшен (т. е. равен нулю) - вывод сконфигурирован как вход. Если PORTBn установлен и вывод сконфигурирован как вход, включается КМОП, подтягивающий резистор. Для отключения резистора PORTBn должен быть сброшен или вывод должен быть сконфигурирован как выход. Таблица 2.16. Влияние DDBn на выводы порта В
Альтернативные функции PORTB: Бит 7 SCK - вход тактовой частоты для SPI. Бит 6 MISO - выход данных для SPI. Бит 5 MOS1 - вход данных для SPI. Бит 3 ОС 1 - выход совпадения. Этот вывод может быть сконфигурирован для внешнего вывода события совпадения таймера 1. Для этого бит DDB3 должен быть установлен в 1 (вывод сконфигурирован как выход). [0] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [ 20 ] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] [31] [32] [33] [34] [35] [36] [37] [38] [39] [40] [41] [42] [43] [44] [45] [46] [47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57] [58] [59] [60] [61] [62] [63] [64] [65] [66] [67] [68] [69] [70] [71] [72] [73] [74] [75] [76] [77] [78] [79] [80] [81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92] [93] 0.001 |