《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > PIC16F84A單片機點LED燈電路及源程序
PIC16F84A單片機點LED燈電路及源程序
摘要: 本文以控制PIC16F84A單片機端口寄存器PORTB口外接的8只LED任一位的亮滅為例,介紹相關C語言程序的編寫
關鍵詞: PIC PIC16F84A LED
Abstract:
Key words :

 

摘要:。

關鍵字:類別:顯示

作者:丁錦滔

下面以控制PIC16F84A單片機端口寄存器PORTB口外接的8只LED任一位的亮滅為例,介紹相關C語言程序的編寫。電路如下圖所示。

<a class=PIC16F84A單片機點燈電路圖PIC16F84A FLASH LED" height="350" src="http://files.chinaaet.com/images/2012/06/16/b9aafd01-964b-484f-b0fa-1d1a19031d9d.jpg" width="376" />
使用MPLABIDEV7.40集成開發(fā)環(huán)境及PICC編譯器所生成的C語言源程序又稱源文件。
在編寫C的源程序時,需要定義硬件的標志頭文件(也稱包含頭文件或頭文件)。因為用戶經(jīng)常使用的標準寄存器地址和其位地址都被定義在Pic.h標志頭文件中。按C語言編譯器編譯源程序的語法規(guī)則,在編寫C語言程序時,必須使用#include語句,把這個pic.h頭文件包含到自己的源程序中。即對于PIC中級產(chǎn)品的單片機,C語言程序的開頭是固定格式#include。編譯器在編譯處理#include語句時,會把pic.h的內容,復制到你的源程序中,這樣PICC才認為用戶使用的標準寄存器的端口地址和端口的位地址已經(jīng)被定義,源程序就會合法地使用這些標準寄存器及其對應的位。

PIC16F84A單片機PORTB口外接8只LED間亮和位1、2、6外接的LED分別點亮的程序清單如下(源文件名PIC01.C):

PIC16F84A單片機點燈電路及源程序PIC16F84A FLASH LED

PIC16F84A單片機點燈電路及源程序PIC16F84A FLASH LED

說明:以上是一個完整的,可執(zhí)行上圖LED點燈的C程序,主要由端口寄存器PORTB口的位定義,延時函數(shù)delay()定義;主函數(shù)main()、延時函數(shù)voiddelay()及各種語句等組成。

該C程序第三行以符號“∥”開頭的說明文是一個注釋,它可在一行內寫完,亦可分多行寫完。注釋可寫在程序的任何位置,用于幫助閱讀和理解程序,說明程序的相關功能、注意事項,以及說明有關算法等。注釋應盡可能簡捷。在編譯時,注釋不產(chǎn)生代碼。C程序還可用“/#”開頭到“#/”結尾之間的內容作注釋,與符號“∥”開頭的注釋是等效的。
上述程序的第一行,是引導程序開始的用#include語句的頭文件。
第二行是PIC單片機PORTB口的位定義,這里指8位,即(&add)*8。
第三行是第二行端口寄存器PORTB的位定義的注釋。
第四行~第六行是端口寄存器PORTB口的RB0、RB1、RB6三位的定義,以便在后續(xù)程序中對其賦值之用。
第七行是RB0、RB1、RB6三位的定義注釋。
第八行是延時函數(shù)的定義第九行到結尾的功能(參看相關注釋)。

此內容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載。