Vi điều khiển ATmega32 thuộc họ AVR, là họ vi điều khiển 8 bit theo cụng nghệ
mới, với những tớnh năng rất mạnh được tớch hợp trong Chip của hóng Atmel theo cụng nghệ RISC (viết tắt của Reduced Instructions Set Computer - Mỏy tớnh với tập lệnh đơn giản húa ), nú mạnh ngang hàng với cỏc họ vi điều khiển 8 bit khỏc như PIC, Pisoc. Do ra đời muộn hơn nờn họ vi điều khiển AVR cú nhiều tớnh năng mới đỏp ứng tối đa nhu cầu của người sử dụng. So với họ 8051, 89xx thỡ nú cú độổn định, khả năng tớch hợp, sự mềm dẻo trong việc lập trỡnh và tiện lợi hơn rất nhiều.
ATmega32 được đúng vỏ 40 chõn, trong đú cú 32 chõn vào ra dữ liệu và được chia làm 4 PORT: PORTA, PORTB, PORTC và PORTD.
Ngoài 32 chõn vào ra dữ liệu trờn ATmega32 cũn 8chõn dựng để nối với nguồn, kết nối với bộ tạo dao động, nối với điện ỏp tham chiếu, nối với bộ phận Reset…
Hỡnh 2.60: Sơđồ chõn của ATmega32 [13]
2.4.3.1. Đặc tớnh của ATmega32
• Bộ nhớ FLASH 32KB.
• Bộ nhớ EEPROM 1024 Byte.
• Bộ nhớ SRAM 2KB.
• Cỏc đường dẫn vào/ra (I/O) lập trỡnh được.
• Cú giao tiếp SPI. • Cú giao tiếp I2C. • Cú 8 kờnh ADC 10 bit . • Cú 1 bộ so sỏnh analog. • Cú 4 kờnh băm xungPWM . • Cú 2 bộ timer/counter 8 bit. • Cú 1 bộ timer/counter1 16 bit . • Cú 1 bộđịnh thời Watchdog .
• Cú 1 bộ truyền nhận USART lập trỡnh được .
• Cú 1 bộ so sỏnh analog.
• Cú cỏc chếđộ tiết kiệm năng lượng như sleep, stand by..vv.
• Điện ỏp hoạt động từ 2,7 – 5,5 V.
Hỡnh 2.61: Hỡnh dạng bờn ngoài của ATmega32 [15]
2.4.3.2. Cổng vào ra của ATmega32
Cổng vào ra là một trong số cỏc phương tiện để Vi điều khiển giao tiếp với cỏc thiết bị ngoại vi. Mỗi Chip cú số cổng vào ra khỏc nhau. Cỏc cổng vào ra của Vi điều khiển AVR đều là cổng vào ra hai chiều cú thểđịnh hướng được. Tất cả cỏc chõn của cổng đều được nối với điện trở kộo lờn, ta cú thể cho phộp hay khụng cho phộp điện trở này hoạt động.
Mỗi một cổng vào ra của Vi điều khiển được liờn kết với ba thanh ghi PORTx, DDRx, PINx. Ba thanh ghi này sẽ được phối hợp với nhau để điều khiển hoạt động của cổng.
Thanh ghi DDRx: Đõy là thanh ghi 8 bit cú thểđọc ghi, cú chức năng điều khiển hướng của cổng (là lối ra hay lối vào). Khi một bit của thanh ghi này được set lờn 1 thỡ cú nghĩa một chõn tương ứng với nú được thiết lập là ngừ ra. Ngược lại nếu 1 bit của thanh ghi DDRx là 0 thỡ chõn tương ứng với nú được thiết lập là ngừ vào.
Hỡnh 2.63: Thanh ghi DDRA [13]
Thanh ghi PORTx: Đõy là thanh ghi 8 bit cú thểđọc ghi, đõy là thanh ghi dữ liệu của PORTx. Nếu một bit của thanh ghi này được thiết lập là 1 thỡ điện trở treo ở chõn tương ứng của nú được kớch hoạt, ngược lại nếu nếu bit này được thiết lập là 0 thỡ điện trở treo ở chõn tương ứng sẽ khụng được kớch hoạt, cổng ở trạng thỏi cao trở.
Hỡnh 2.64: Thanh ghi PORTA [13]
Thanh ghi PINx: Đõy là thanh ghi chỉ đọc chứ khụng ghi, đõy là địa chỉ trong bộ
nhớ I/O kết nối trực tiếp cỏc chõn của cổng. Khi ta đọc PORTx tức là ta đọc dữ liệu
được chốt trong PORTx, cũn khi ta đọc PINx thỡ giỏ trị logic hiện thời ở chõn của cổng tương ứng được đọc.
Hỡnh 2.65: Thanh ghi PINA [13]
2.4.3.3. Bộđịnh thời Timer/counter của AVR
Trong mỗi Chip của họ AVR được tớch hợp số bộđịnh thời khỏc nhau. Cú hai loại bộđịnh thời là bộđịnh thời 8 bit và bộđịnh thời 16 bit.
Hỡnh 2.66: Sơ đồ khối bộ Timer/Counter 8bit [13]