本文目錄一覽:
8位單片機的c語言程序設計新建文件夾步驟
方法/步驟
1
首先是打開keil軟件,打開後顯示的界面如下
2
如下第一張圖所示點擊project-new project,點擊後將會出現如下第二張圖所示界面;在文件框中填寫你的工程名,名字可以是任意英文字符組成的(在此時你最好在你所希望存儲該工程的地方新建一文件夾,如第二張圖所示就是在桌面上建立了一個測試文件夾來存儲新建的工程)
3
輸入工程名後會出現如下圖所示的芯片選擇對話框,選擇你開發板上的型號即可(相信要看這張帖子的讀者一定是在學51單片機,此時只需選擇
Atmel-AT89c52即可。如下第二張圖所示)
一路點擊確認後回到如下圖所示的主界面,並如下圖所示點擊新建程序輸入文本
點擊後出現如下第一張圖所示界面,並點擊保存按鈕
點擊保存按鈕後出現下第一張圖所示對話框,在箭頭所指的地方輸入源文件名稱加後綴名(如果你是用C語言編寫程序後綴名為*.c;如果你是用彙編語言編寫程序則後綴名為*.asm)並點擊確認保存。確認後界面如下第二張圖所示,注意箭頭所指地方的變化。
接下來的一步是將源文件加入到工程中,點擊選中source group並右擊將會出現如下圖所示界面。
再點擊Add files to…….;如下第一張圖箭頭所示處。點擊後將會出現第二張圖所示的對話框,在該對話框中只要點擊選中第五歩保存的源文件並點擊Add即可(注意點擊選中源文件前後的變化,並且特別注意點擊Add後界面沒有任何變化,你只要關閉該對話框即可)
打開source group後將會出現如下圖箭頭所指處的變化
在右邊的源文件輸入框中寫入程序,並點擊如圖所示的編譯按鈕(可以看到該程序沒有錯誤,編譯成功)
但我們點擊進入工程的文件夾沒有看到後綴名為.hex文件,如下圖所示
所以我們需點擊target按鈕進行設置,如下第一張圖所示。點擊後出現第二張圖所示對話框
在對話框中點擊output選項如下圖1處顯示,並勾選create hex file如下圖2處顯示。勾選後關閉對話框並如第10步再編譯一次。可以看到文件夾中生成了.hex文件
單片機8位數碼管依次顯示0到7,要求用c語言實現
假設8個數碼管公共端均接地,同時顯示0-7
#include reg52.h
#include intrins.h
#define uchar unsigned char
#define uint unsigned int
uchar code DSY_CODE[]=
{
0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0x82,0xf8,0x80,0x90,0xff
};
void DelayMS(uint x)
{
uchar t;
while(x–)
for(t=120;t0;t–);
}
void main()
{
uchar i=0;
P0=0x00;
while(1)
{
P0=~DSY_CODE[i];
i=(i+1)%10;/*顯示0-9*/
DelayMS(200);
}
}
下面程序從左到右顯示
#include reg52.h
#include intrins.h
#define uchar unsigned char
#define uint unsigned int
uchar code DSY_CODE[]=
{
0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90
};
void DelayMS(uint x)
{
uchar i;
while(x–)
{
for(i=200;i0;i–);
}
}
void main()
{
uchar i,k=0x80;
while(1)
{
for(i=8;i0;i–)
{
P2=0xff;
k=_crol_(k,1);
P0=DSY_CODE[8-i];
P2=k;
DelayMS(3);
}
}
}
一般8位PIC單片機使用C語言還是彙編語言編程,好像編譯器不是支持所有類型的單片機
PIC單片機的C語言編譯器是分類支持各類PIC單片機的。
一般做工業產品的公司大多用彙編來編寫程序,原因有:
1:pic的8位單片機一般ROM和RAM都相對較小,而現在的PIC的C編譯器在優化方面做的不是很好,簡單的一個C語句編譯器能編出很多行彙編代碼。所以有些開發人員認為用c還不如直接用彙編寫。
2:因為PIC的C編譯器不是免費的,破解版的又存在一些邏輯漏洞什麼的。而用pic單片機應用的大多是一些需要穩定性極高的控制場合,所以很多開發公司都乾脆直接使用彙編來寫。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/240365.html