微控制器玩轉太陽能逆變

2023-01-18 18:03:04 字數 2553 閱讀 5558

的最小系統

這款微控制器是stc公司今年來才推出的一款價效比極高的產品,微控制器的最小系統很簡單,只用接上電源即可。微控制器的復位,晶振電路都已經整合在微控制器的內部,由於考慮到怕微控制器受到外界干擾而捨棄了外部晶振,當然通過筆者長時間的測試,內部晶振的頻率誤差比較小,並且可以通過軟體隨意設定晶振頻率方便快捷。

以下為晶振設定:

可以設定的頻率如上圖所示,在本程式中則是使用11.0592m的晶振頻率~

如何**程式

上面的**就是stc官方提供的**軟體,我使用的是v6.67d。

第一步:【微控制器型號】:選擇 [stc15f2k60s2]

第二步:【串口號】:選擇你本機和微控制器最小系統連線的實際串口號,台式電腦預設為:com1 筆記本用usb轉串列埠一般為:com3 或者com4。。。

我用的是這種串列埠線:

串口號為:com4

這種串列埠線的簡易連線圖如下:很方便**程式

第三步:【波特率設定】:最低波特率2400不用改,最高盡量選擇9600左右,太高容易**不成功,特別是程式檔案大了容易**失敗。

第四步:【開啟程式檔案】:選擇將要**到微控制器上的hex檔案

第五步:【選擇微控制器內部irc的時鐘頻率】本系列程式選擇頻率為:11.0592m

第六步:【**】:在微控制器系統未上電的情況下點選【**/程式設計】按鈕

第七步:【給微控制器上電】會出現如下介面

完成後出現如下介面:

3.控制器外殼

本人不是很喜歡裸奔,裸奔只能作為實驗而已,在**上看到有以下的公模外殼,電路板也將設計來裝在外殼裡!

4.微控制器顯示模組與按鍵

由於所選擇的這個公模外殼只有3個led視窗+1位數碼管視窗和按鍵位置,先將顯示和原理圖整理如下:

5.串列埠顯示程式(顯示字串

串列埠顯示字串

c語言程式

** 呼叫相應的檔案

#include""

#include <>

typedef unsigned char u8;

typedef unsigned int u16;

typedef unsigned long u32;

#define segment_led p2

#define disp_off 0x00

sbit solar_led = p0^3;

sbit batt_low_r = p0^1;

sbit batt_high_g = p0^2;

sbit load_led = p0^0;

名稱:1ms延時子程式帶(16位)引數

void delay_1ms(u16 z)

while (--i);

}}//**初始化串列埠

void inituart()

//**傳送串列埠資料

void senddata(u8 dat)

//**輸出字串

void printstring(u8 code *puts)

//** 主程式

void main()

}6.數碼管與led點亮程式

實際**:

c程式** 呼叫相應的檔案

#include""

#include <>

typedef unsigned char u8;

typedef unsigned int u16;

typedef unsigned long u32;

#define segment_led p2

#define led_prot p0

#define disp_off 0x00

#define disp_on 0xff

sbit solar_led = p0^3;

sbit batt_low_r = p0^1;

sbit batt_high_g = p0^2;

sbit load_led = p0^0;

名稱:1ms延時子程式帶(16位)引數

void delay_1ms(u16 z)

while (--i);

}}**共陰極數碼管斷碼表

u8 code numtab={

0x7b,0x50,0x37,0x76,0x5c,0x6e,0x6f,0x70,0x7f,0x7e, //0-9

0x7d, //a 10

0x4f, //b 11

0x2b, //c 12

0x57, //d 13

0x2f, //e 14

0x2d, //f 15

0x6b, //g 16

0x4d, //h 17

0x09, //i 18

0x53, //j 19

0x5d, //k 20

0x0b, //l 21

0x65, //m 22

0x45, //n 23

0x47, //o 24

0x3d, //p 25

0x7c, //q 26

0x05, //r 27

微控制器實習

第四次實習 樓道照明燈 一 實習題目 樓道照明燈 二 實習目的 綜合實驗,掌握80c51微控制器的程式設計除錯方法。三 實習內容 實現樓道間照明燈的方便控制,乙個照明燈,在樓上和樓下各有乙個 閉合式 開關控制。開關的閉合並不直接決定燈的亮滅,而開關狀態的改變才是決定燈亮滅的關鍵。即不管兩個開關當前的...

微控制器總結

微控制器引腳 80c51的資料儲存器配置 80c51的特殊功能暫存器 sfr 五個中斷源 兩個外部中斷,兩個定時器計數器中斷,乙個序列介面中斷。int0 int1輸入低電平或負跳變訊號作為中斷觸發事件 t0 t1定時器 計數器中斷 序列口中斷 8051微控制器中斷源的向量位址 tcon的中斷標誌 中...

微控制器學習

自己不知不覺已經走過了五年的微控制器學習之旅。在2003年最初接觸微控制器的時候,在我心中覺得51就是微控制器,微控制器就是51,根本不知道還有其他微控制器的存在。那時候老師只教會了我們組合語言,根本不知道用c語言也可以進行微控制器開發。幸運的是,我加入了微控制器興趣小組,在老師的指導下,做了一系列...