SI-PROG編程器的工作原理及其程序設計
摘 要:介紹SI-PROG編程器的工作原理,利用PC機串口UART芯片實(shí)現單片機的ISP下載。PC機串口8250芯片中SOUT,DTR,RTS,CTS四個(gè)引腳的電平可通過(guò)其內部的幾個(gè)寄存器分別進(jìn)行控制或讀取,利用引腳可實(shí)現單片機的ISP下栽。介紹了8250與單片機之間通信信號的邏輯關(guān)系以及電平轉換,分析了接收器的閾值電壓的特點(diǎn),給出了使用SI-PROG編程器的條件。最后,以AVR單片機為例介紹了下載程序設計。結果表明,利用PC機串口UART芯片可以實(shí)現對AVR單片機的ISP下載,其硬件電路和軟件設計都很簡(jiǎn)單。
關(guān)鍵詞:S1-PROG編程器;程序設計;UART;AVR單片機
SI-PROG編程器為PonyProg 2000軟件中使用的一種ISP編程器,該編程器利用PC機串口電路的異步通信控制器UART實(shí)現AVR,PIC,AT89等單片機的ISP編程。雖然該編程器不為Atmel的AVRStudio所支持,但是其硬件電路簡(jiǎn)單,成本低,便于制作,適于初學(xué)者進(jìn)行學(xué)習和簡(jiǎn)單開(kāi)發(fā)。下面以AVR單片機為例,介紹SI-PROG編程器的工作原理及其程序設計。
l SI-PROG編程器的工作原理
1.1 電路組成
圖1為SI-PROG串口編程器的工作原理圖。電路分為PC機串口電路、SI-PROG編程器和目標機3部分。編程器通過(guò)9針D型連接器DB9與PC機串口連接,通過(guò)10針連接器J1與目標機連接,電路在文獻[4]的基礎上做了適當的簡(jiǎn)化。J1引腳定義與Atmel的STK200下載線(xiàn)相同。
1.1.1 PC機串口電路及SI-PROG編程器
PC機串口電路由U1~U4組成。8250(U1)為異步通信控制器UART,SN75150(U2,U3)為驅動(dòng)器,SN75154為線(xiàn)接收器。U2,U3,U4實(shí)現8250引腳上TTL電平與串口DB9上RS 232電平轉換。SI-PROG編程器則完成DB9上RS 232電平與目標機上TTL電平的轉換。
1.1.2 串行SPI接口
編程器通過(guò)目標機的SPI接口對其片內的FLASH程序存儲器進(jìn)行下載編程。SPI接口由SCK,MOSI和MISO等幾條信號線(xiàn)組成。下載編程的過(guò)程實(shí)際上是PC機與AVR的通信過(guò)程。兩者的關(guān)系是一種主從關(guān)系,PC機為主機,AVR為從機。主機經(jīng)MOSI引腳將串行數據發(fā)給從機,從機經(jīng)MISO引腳將數據返回給主機。SCK為串行時(shí)鐘脈沖,由主機發(fā)往從機。主機通過(guò)SCK脈沖控制與從機的數據傳輸。圖2為串行下載編程時(shí)序圖。單片機在SCK上升沿讀取MOSI上的數據位,在SCK下降沿輸出數據位到MISO。
評論