恒流源,直流數控電阻箱設計的完整論文下載(word格式 可編輯):
比賽.docx
(2.22 MB, 下載次數: 76)
2017-7-7 14:06 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
單片機源程序如下:
- #include "sys.h"
- #include "delay.h"
- #include "usart.h"
- #include "led.h"
- #include "lcd.h"
- #include "key.h"
- #include "sram.h"
- #include "malloc.h"
- #include "usmart.h"
- #include "sdio_sdcard.h"
- #include "malloc.h"
- #include "w25qxx.h"
- #include "ff.h"
- #include "exfuns.h"
- #include "fontupd.h"
- #include "text.h"
- #include "adc.h"
- #include "dac.h"
- #include "value.h"
-
- int main(void)
- {
- // u16 adcx;
- // float temp;
- // u16 dacval=0;
- u8 key;
-
- NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);//設置系統中斷優先級分組2
- delay_init(168); //初始化延時函數
- uart_init(115200); //初始化串口波特率為115200
- Adc_Init(); //adc初始化
- Dac1_Init(); //DAC通道1初始化
-
- LED_Init(); //初始化LED
- R_Init(); //電阻箱 輸入變量,初始化
- LCD_Init(); //LCD初始化
- KEY_Init(); //按鍵初始化
- W25QXX_Init(); //初始化W25Q128
- usmart_dev.init(168); //初始化USMART
- my_mem_init(SRAMIN); //初始化內部內存池
- my_mem_init(SRAMCCM); //初始化CCM內存池
- exfuns_init(); //為fatfs相關變量申請內存
- f_mount(fs[0],"0:",1); //掛載SD卡
- f_mount(fs[1],"1:",1); //掛載FLASH.
- while(font_init()) //檢查字庫
- {
- UPD:
- LCD_Clear(WHITE); //清屏
- POINT_COLOR=RED; //設置字體為紅色
- LCD_ShowString(30,50,200,16,16,"Explorer STM32F4");
- while(SD_Init()) //檢測SD卡
- {
- LCD_ShowString(30,70,200,16,16,"SD Card Failed!");
- delay_ms(200);
- LCD_Fill(30,70,200+30,70+16,WHITE);
- delay_ms(200);
- }
- LCD_ShowString(30,70,200,16,16,"SD Card OK");
- LCD_ShowString(30,90,200,16,16,"Font Updating...");
- key=update_font(20,110,16,"0:");//更新字庫
- while(key)//更新失敗
- {
- LCD_ShowString(30,110,200,16,16,"Font Update Failed!");
- delay_ms(200);
- LCD_Fill(20,110,200+20,110+16,WHITE);
- delay_ms(200);
- }
- LCD_ShowString(30,110,200,16,16,"Font Update Success! ");
- delay_ms(1500);
- LCD_Clear(WHITE);//清屏
- }
- POINT_COLOR=RED;
- Show_Str(5,10,275,24,"2017長通杯電子競賽",24,0);
- POINT_COLOR=BLACK ;
- Show_Str(30,50,200,24,"數控直流電阻箱",24,0);
- Show_Str(80,80,200,24,"-225實驗室-",24,0);
- POINT_COLOR=BLUE;//設置字體為藍色
- Show_Str(10,110,200,24,"端子電壓:00.000V",24,0);
-
- POINT_COLOR=RED;
- // LCD_ShowxNum(118,110,rely_V,2,24,0); //顯示電壓值整數部分
- // rely_V=6;
- //LCD_ShowxNum(154,110,rely_V,1,24,0); //顯示電壓值整數部分
- LCD_DrawRectangle( 10,140,230,310 ); //矩形框
- while(1)
- {
- while(MODE==0)
- {
-
-
- LCD_Fill(50,180,74,204,GREEN);
- Show_Str(80,180,200,24,"跟隨模式",24,0);
- LCD_Fill(50,210,74,234,RED);
- Show_Str(80,210,200,24,"鎖定模式",24,0);
- delay_ms(1000);
-
- if(KEY10==0 &&KEY9==1)
- {
- MODE=2;
- }
- if(KEY9==0 && KEY10==1)
- {
- MODE=1;
- }
- if(key==U_P) goto UPD ;
- /////////////////跟隨模式
- while(MODE==1)
-
- {
- LCD_Fill(15,145,225,305, WHITE);
- while(MODE==1)
- {
- Test_V();
- Get_resistance();
-
- Open_ELEC();
-
- if(KEY9==0&&KEY10==0)
- {
- MODE=0;
- }
-
- }
- }
- //////////////////鎖定模式
- while( MODE==2)
- {
- LCD_Fill(15,145,225,305, WHITE);
-
- Test_V();
- while(MODE==2)
- {
-
- Get_resistance();
- Open_ELEC();
- if(KEY9==0&&KEY10==0)
- {
- MODE=0;
- ……………………
- …………限于本文篇幅 余下代碼請從51黑下載附件…………
復制代碼
所有資料51hei提供下載:
2017校內競賽(直流電阻箱).7z
(1.72 MB, 下載次數: 90)
2017-7-7 13:55 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|