中天黑壳4850电池单片机读取电池数据.
前几天买的中天4850电池,为了更好的管理电池,用单片机STC8H8K64U制作了一个模拟上位机部分功能.用255X160小液晶屏显示正常,发到这里备份一个.
单片机源程序如下:
- #include "RA8806c.h"
- #include"fengmingqi.h"
- #include"show_batt_dat.h"
- #include"com1_time2.h"
- #include"com2_time2.h"
- #include"dingshiqi.h"
- #include"key_on_off.h"
- /*
- stc8h1k28
- 251103 -> stc8h8k64u
- 48V锂电池串口传送数据
- 11059200UL 11.0592MHZ
- */
- void main(){
- stc_pin();//上电管脚初始化2018-10-25//
- stc15w_pin(0,0,0);//mode=0 8051格式, =1 推挽输出 ,=2 高阻输入 ,=3 开漏,
- set_io_4kr();//设置上拉4k电阻
- AUXR = 0x00;
- delay1(500);//1ms
- // IR_Init(); //100us进入T0中断
- clr_batt_v();//清空数据
- clr_copy_bat_v();//清空记录数组数据
- BBZZ(255);
- //Timer0Init(); //50000微秒@12.000MHz
- time4_init();//10ms,11.059200
- UartInit();//串口一初始化定时器一
- // UartInit2();//串口二初始定时器二
-
- LCD_Init();
- delay1(5);//1ms
- LCD_CmdWrite( 0x00);
- LCD_DataWrite(0x04);
- delay1(5);//1ms
- Only_Show_ddram1();
- // Only_Show_Page1(); //只显示DDRAM1
- // Access_Page1(); //只存取DDRAM1
- LCD_CmdWrite( 0x12);
- LCD_DataWrite(0x11);
- no_bold_word();//汉字非粗体显示
- clear();
- delay1(5);//1ms
-
- quhe(10,0);//锄禾11, 16
- delay1(1000);//u16
- my_clear();
- write_v_in_str(); //测试列输入,从上到下光标
- led = 0;
-
- // LCD_ShowStr(0,0,"邵建雄电池batt数\xfd据显示");//在指定的坐标处显示字符串,由于数是0xfd要转义
-
- while(1){
-
- //show_batt_dat();
- xianshi_voltage(); //把接收到的电池电压,数据显示出来
- //ti2_send(); //发送查询数据250926改动
-
- key_t0_set();//处理按键事件
-
- }
- }
复制代码
Keil代码下载:
20251230_BACK_batt.7z
(115.51 KB, 下载次数: 0)
|