ATmega328

ATmega328Atmel的megaAVR產品線之一款單晶片產品。

規格

這是一顆8位元AVR精簡指令型微控制器,擁有32KB ISP具備寫入同時讀取能力的閃存記憶體。1KB 的電氣可抹除唯讀記憶體。2KB 隨機存取記憶體。23個通用輸出輸入線。32個通用工作暫存器。三個具備比對能力的計時計數器。內部與外部中斷。可程式化的通用非同步收發串列介面。一組位元組導向的兩線式串列介面。一組SPI串列埠。6通道10位元類比數位轉換器(TQFP及QFN/MLF包裝中只有8通道)。一組具有內部震盪器的可程式化看門狗計時器。五組可選擇的功率節約模式。這個單晶片的工作電壓運作在1.8V-5.5V之間。這個單晶片運作效能達到每MHz 有1 MIPS[1]

關鍵參數

ParameterValue
CPU type8-bit AVR
Performance20 MIPS at 20 MHz[2]
Flash memory32 kB
SRAM2 kB
EEPROM1 kB
Pin count28-pin PDIP, MLF, 32-pin TQFP, MLF[2]
Maximum operating frequency20 MHz
Number of touch channels16
Hardware QTouch AcquisitionNo
Maximum I/O pins26
External interrupts24
USB InterfaceNo
USB SpeedNo

系列方案

一個常見的替代方案是ATmega328P,是低功率消耗的版本。

應用

截至2013年,ATmega328常見於許多專案之中,這些專案多半是簡單的、低功耗的以及低成本的。最多的應用是在流行的Arduino控制板上,有Arduino Uno、Arduino Nano和Arduino LilyPad等。

程式燒錄

ATmega 48A/PA/88A/PA/168A/PA/328/P 28-PDIP 接腳圖 (datasheet)

可靠度鑑定顯示資料保持失敗率(data retention failure rate)遠低於1 PPM,條件是在溫度85 °C時可保持20年,在溫度25°C時可保持100年。

並列式程式燒錄模式[2]
Programming signalPin NameI/OFunction
RDY/BSYPD1OHigh means the MCU is ready for a new command, otherwise busy.
OEPD2IOutput Enable (Active low)
WRPD3IWrite Pulse (Active low)
BS1PD4IByte Select 1 (“0” = Low byte, “1” = High byte)
XA0PD5IXTAL Action bit 0
XA1PD6IXTAL Action bit 1
PAGELPD7IProgram memory and EEPROM Data Page Load
BS2PC2IByte Select 2 (“0” = Low byte, “1” = 2nd High byte)
DATAPC[1:0]:PB[5:0]I/OBi-directional data bus (Output when OE is low)

並列式程式燒錄模式。要進入並列式程式燒錄模式有一連串的動作,首先清除單晶片程式內容作法如下,PAGEL (PD7), XA1 (PD6), XA0 (PD5), BS1 (PD4) 必須設為0(接地)。RESET腳接地,VCC腳接地。接著VCC接4.5V-5.5V。等待60us。接著RESET接到11.5V-12.5V。等待310us。設定XA1:XA0:BS1:DATA = 100 1000 0000,xtal1腳給一個脈波150us,WR低準位脈波。以上會讓單晶片清除原本程式內容。等到RDY/BSY(PD1)腳出現高準位就完成。 如要寫入則設定XA1:XA0:BS1:DATA = 100 0001 0000, XTAL1腳送脈波, WR腳送低準位脈波。 詳情參考原廠手冊[2]

串列式程式燒錄模式[2]
SymbolPinsI/ODescription
MOSIPB3ISerial data in
MISOPB4OSerial Data out
SCKPB5ISerial Clock

串列資料在單晶片的進出,當單晶片時脈在正緣(rising edge)時是送入資料到單晶片,當單晶片時脈是負緣(falling edge)時,資料則是從單晶片送出。VCC送電之前先把RESET腳與SCK腳設為低準位。等待20ms。接著從串列資料進入腳(MOSI腳)送入0xAC, 0x53, 0x00, 0x00燒錄程式指令,單晶片接受之後會回傳第二個指令0x53。

參見

  • ATmega88
  • ATmega168

注釋

  1. . [2016-03-29]. (原始内容存档于2016-03-28).
  2. (PDF). [2016-05-04]. (原始内容 (PDF)存档于2016-04-22).

外部連結

  • . Atmel. [2016-06-02]. (原始内容存档于2016-06-04).
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.