久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 電動車充電控制器制作

電動車充電控制器制作

作者: 時間:2016-12-01 來源:網絡 收藏
幾天熬夜控制器終于完工,買別人的要幾百塊一套自己做只要幾十塊就能OK,還算是有點價值,不羅嗦直接上代碼,依然是以往的風格但注釋更加詳細,有興趣的騷年可以參考下


工程文件及hex文件下載:http://www.51hei.com/f/chongdianqia.rar

#include //包含頭文件
#include//包函_nop_延時函數的頭文件
#define uchar unsigned char//宏定義
#define uint unsigned int//宏定義
//595芯片控制腳定義
sbit SH=P1^7;//HC595移位控制
sbit ST=P1^6;//HC595鎖存更新顯示
sbit DS=P1^5;//HC595串行數據輸入
//輸入引腳定義
sbit TB=P1^4; //投幣鍵
sbit shu1=P1^3; //第一組輸入選擇
sbit shu2=P1^2; //第二組輸入選擇
sbit shu3=P1^1; //第三組輸入選擇
sbit shu4=P1^0; //第四組輸入選擇
//輸出引腳定義
sbit out1=P3^0; //第一組輸出
sbit out2=P3^1; //第二組輸出
sbit out3=P3^2; //第三組輸出
sbit out4=P3^3; //第四組輸出
//計時用變量
int cou=0; //計數器
int TIME_SS=0;//秒
int TIME_MM=0;//分
int TIME_HH=0;//時
//顯示緩存數組,第一個元素為顯示數據,后面兩個為顯示八段碼的地址已經初始賦值后面的程序只要維護顯示數據元素
char P_HC[4][4][3]={{{0x00,0x00,0x01},{0x00,0x00,0x02},{0x00,0x00,0x04},{0x00,0x00,0x08}},{{0x00,0x00,0x10},{0x00,0x00,0x20},{0x00,0x00,0x40},{0x00,0x00,0x80}},{{0x00,0x01,0x00},{0x00,0x02,0x00},{0x00,0x04,0x00},{0x00,0x08,0x00}},{{0x00,0x10,0x00},{0x00,0x20,0x00},{0x00,0x40,0x00},{0x00,0x80,0x00}}};
//定時器數據數組,分別代表四個輸出口所剩時間值單位為分鐘
int TIME[4]={0,0,0,0};
//投幣器計數器,存儲投幣數量選擇輸出口時一個投幣值可以增加某一輸出口240分鐘的定時值
int TOUBI=0;
///////////////////////////////////////////////////
void delay(unsigned char x) //延時函數
{
unsigned char i,j;
for(i = 0;i < x;i++)
for(j = 0;j < 200;j++);

}
///////////////////////////////////////////////////
//高位先入
void sendbyte(char Rdate)//HC595串口輸入一個字節
{
char a;
char date=Rdate;
for(a=0;a<8;a++)
{
SH=0;
if(date&0x80)//先將最高位移入
{
DS=1;
SH=1;
}
else
{
DS=0;
SH=1;
}
date=date<<1;//輸入的字節位左移
}
}
///////////////////////////////////////////////////
void print(void)
{
//顯示函數功能是把顯示緩存數組中的數據顯示到八段碼上
int i,j,k;
for(k=0;k<4;k++)
{
for(j=0;j<4;j++)
{
for(i=0;i<3;i++)
{
sendbyte(P_HC[k][j][i]);
}
ST=0;
_nop_();
_nop_();
ST=1;
}
}
}
///////////////////////////////////////////////////
void P_HC_fuzhi(int x,int y,int z )
{
//顯示數組顯示數據賦值函數,第一個常數為八段碼組別,第二個為八段碼位置 ,第三個位賦值數據(0-9)
switch(z)
{
case 0:
P_HC[x][y][0]=0xc0;
break;
case 1:
P_HC[x][y][0]=0xf9;
break;
case 2:
P_HC[x][y][0]=0xa4;
break;
case 3:
P_HC[x][y][0]=0xb0;
break;
case 4:
P_HC[x][y][0]=0x99;
break;
case 5:
P_HC[x][y][0]=0x92;
break;
case 6:
P_HC[x][y][0]=0x82;
break;
case 7:
P_HC[x][y][0]=0xf8;
break;
case 8:
P_HC[x][y][0]=0x80;
break;
case 9:
P_HC[x][y][0]=0x90;
break;
case 10:
P_HC[x][y][0]=0xff;
break;
}

本文引用地址:http://cqxgywz.com/article/201612/324243.htm

}


上一頁 1 2 下一頁

關鍵詞: 電動車充電控制

評論


技術專區

關閉