仿真圖proteus7.8及以上
程序編譯器:keil 4/keil 5
編程語言:C語言
設計編號:S0066
1. 主要功能:
基于51單片機AT89C51/52(與AT89S51/52、AT89C51/52、STC89C51/52等51內核單片機通用)
基于51單片機的簡易數字電流表仿真設計
2.采樣電流范圍0-20ma;
3.用數碼管顯示轉換后的實際電壓值
4.顯示保留小數點后兩位。
需注意仿真中51單片機芯片是兼容的,AT89C51,AT89C52是51單片機的具體型號,內核是一樣的。相同的原理圖里,無論stc還是at都一樣,引腳功能都是一樣的,程序是兼容的,芯片可以替換為STC89C52/STC89C51/AT89C52/AT89C51等51單片機芯片。
資料下載鏈接:
【騰訊文檔】S0066 網盤鏈接
https://docs.qq.com/doc/DS0VHUWxtemJ4Qkxz
以下為本設計資料展示圖:
2. 講解視頻:
講解視頻包含仿真運行講解和代碼講解
3. 仿真
打開仿真工程,雙擊proteus中的單片機,選擇hex文件路徑,然后開始仿真。
4. 程序代碼
使用keil4或者keil5編譯,代碼有注釋,可以結合報告理解代碼含義。
main函數
void main()
{
TimeInitial();//定時器初始化
while(1)
{
ST=0;
OE=0;
ST=1;
ST=0;
while(EOC==0);
OE=1;
getdata=P0;//得到電壓值
OE=0;
temp=getdata*1.0/255*2000;//通過計算得到電壓值。通過歐姆定律計算得到電流值
dispbuf[0]=temp%10;
dispbuf[1]=temp/10%10;
dispbuf[2]=temp/100%10;
dispbuf[3]=temp/1000;
Display();
}
}
數碼管顯示函數
void Display()//顯示函數
{
P1=~dispbitcode[dispbuf[3]];//第一個數碼管段選數據
P20=1;
P21=0;
P22=0;
P23=0;//選擇位選
Delay(10);
P1=0xFF;
P1=~dispbitcode[dispbuf[2]];//第二個數碼管段選數據
P17=0;
P20=0;
P21=1;
P22=0;
P23=0;//選擇位選
Delay(10);
P1=0xFF;
P1=~dispbitcode[dispbuf[1]];//第三個數碼管段選數據
P20=0;
P21=0;
P22=1;
P23=0;//選擇位選
Delay(10);
P1=0xFF;
P1=~dispbitcode[dispbuf[0]];//第四個數碼管段選數據
P20=0;
P21=0;
P22=0;
P23=1;//選擇位選
Delay(10);
P1=0xFF;
}
5. 設計報告
8958字設計報告,內容包括硬件設計、軟件設計、軟硬件框圖、調試、結論等
6. 設計資料內容清單&&下載鏈接
資料設計資料包括仿真,程序代碼、講解視頻、功能要求、設計報告、軟硬件設計框圖等。
0、常見使用問題及解決方法–必讀?。。?!
1、仿真圖
2、程序源碼
3、功能要求
4、開題報告
5、設計報告
6、軟硬件流程框圖
7、講解視頻
Altium Designer 安裝破解
KEIL+proteus 單片機仿真設計教程
KEIL安裝破解
Proteus安裝
Proteus簡易使用教程
單片機學習資料
相關數據手冊
答辯技巧
設計報告常用描述
鼠標雙擊打開查找嘉盛單片機51 STM32單片機課程畢業(yè)設計.url