資源簡介
合泰bs83b08c用C實現,HT-IDE3000.觸模按鍵功能,5個按鍵,6個燈,有觸模,對應燈閃,

代碼片段和文件信息
#include?“BS83B08C.h“
#include?“common.h“
DEFINE_ISR(isr_Toucth?0x08); //觸模中斷
DEFINE_ISR(isr_tb?0x14); //time?base?中斷入口
volatile?u8?f_Timebase;
void?clrram(void)
{
_bp=0;
_mp1=0x60;
for(_tblp=0x60;_tblp<0xff;_tblp++)
{
_iar1=0;
_mp1++;
}
_bp=1;
_mp1=0x80;
for(_tblp=0x80;_tblp<0xff;_tblp++)
{
_iar1=0;
_mp1++;
}
_bp=0;
}
void?Clk_Init(void)
{
_smod?=?1;//HLCLK; //?fsys?=?8MHZ
_wdtc?=?WDT_EN|FSUB_DIV2_14; //512ms
_pscr=0x00|0x01;//時鐘源控制時基中斷周期,分別通過?PSCR?寄存器中的?CLKSEL[1:0]?位進行選擇。
_tbc?=?0x00|0x08|0x05; //tbck=fsys/4?2^13?=?4000us
_tbe?=?1;//時基中斷使能
}
void?GPIO_Init(void)
{
_pac?=?0x00|PIN0|PIN2; //輸出
_papu?=?0x00|PIN1|PIN4|PIN3|PIN7|PIN0|PIN2; //pull-up
_pawu?=?0x00; //wake?up
_pa?=?0x00;//|PIN1|PIN4|PIN3|PIN7;//
_pb?=?0x00|PIN0|PIN1|PIN2|PIN3|PIN4;//0xE0;
_pbc?=?0x00|PIN0|PIN1|PIN2|PIN3|PIN4;
_pbpu?=?0x00|PIN5|PIN6|PIN7;
}
void?Toucht_init(void)
{
_tkm0rol=0xF8;//觸控按鍵模塊?n?參考振蕩器電容選擇低字節
_tkm0roh=0x03;//D9~D8:觸控按鍵模塊?n?參考振蕩器電容選擇高字節
_tkm1rol=0xF8;//觸控按鍵模塊?n?參考振蕩器電容選擇低字節
_tkm1roh=0x03;//D9~D8:觸控按鍵模塊?n?參考振蕩器電容選擇高字節
_m0k1en=1;
_m0k2en=1;
_m0k3en=1;
_m0k4en=1;
_m1k1en=1;
_tktmr=0;//觸控按鍵時隙?8-bit?計數器預載寄存器//?=?(256-TKTMR[7:0])×32tTSC
_tkc0=0x07;//1M
_tkc1=0x00;//1M
_tkm0c0=0x10;//濾波功能控制位
_tkm1c0=0x10;//濾波功能控制位
_tkme=1;//中斷
_tkst=0;//上升沿,觸發計數
_tkst=1;//
_m0tss=0;
_m0koen=1;
_m0roen=1;
_m0dfen=0;
_m0filen=1;
_m0mxs0=0;
_m0mxs1=0;
_m1tss=0;
_m1koen=1;
_m1roen=1;
_m1dfen=0;
_m1filen=1;
_m1mxs0=0;
_m1mxs1=0;
}
volatile?u16?SysCount=0;
volatile?u8?Sys4msflag=0;
volatile?u8?Sys20msflag=0;
volatile?u8?Sys100msflag=0;
volatile?u8?Sys500msflag=0;
void?Systick(void)
{
Sys4msflag=0;
Sys20msflag=0;
Sys100msflag=0;
Sys500msflag=0;
if(f_Timebase)//
{
f_Timebase?=?0;
SysCount++;
Sys4msflag=1;
if(SysCount%5==0)Sys20msflag=1;
if(SysCount%25==0)Sys100msflag=1;
if(SysCount%122==0)Sys500msflag=1;
if(SysCount==25000)SysCount=0;
}
}
/***************************************************************
**?名?稱:?eeprom_read
**?描?述:?eeprom讀數據
**?輸?入:?addr
**?輸?出:?無
**?返?回:?_eed
**?備?注:?無
****************************************************************/
u8?eeprom_read(u8?addr)
{
_eea?=?addr;//地址
_mp1?=?0x40;
_bp?=?1;
_iar1?|=?BIT1;
_iar1?|=?BIT0;
while(_iar1&BIT0);
_iar1?=?0;
_bp?=?0;
return?_eed;
}
/***************************************************************
**?名?稱:?eeprom_write
**?描?述:?eeprom寫數據
**?輸?入:?addrdata//0x00-0x3f
**?輸?出:?無
**?返?回:?無
**?備?注:?無
****************************************************************/
void?eeprom_write(u8?addru8?data)
{
_eea?=?addr;
_eed?=?data;
_mp1?=?0x40;
_bp?=?1;
_emi?=?0;
_iar1?|=?BIT3;
_iar1?|=?BIT2;
_emi?=?1;
while(_iar1&BIT2);
_iar1?=?0;
_bp?=?0;
}
void?main(void)
{
Clk_Init();
GPIO_Init();
clrram();
Toucht_init();
_emi?=?1;
while(1
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????2156??2017-05-23?11:47??MyBS83B08C\BS83B08C_CTOUCH_V500\BS83B08C_CTOUCH_V500.AEX
?????文件???????4064??2017-05-10?17:33??MyBS83B08C\BS83B08C_CTOUCH_V500\BS83B08C_CTOUCH_V500.CEX
?????文件????????194??2014-03-28?16:41??MyBS83B08C\BS83B08C_CTOUCH_V500\BS83B08C_CTOUCH_V500.INC
?????文件???????3807??2018-03-09?17:22??MyBS83B08C\common.h
?????文件???????4721??2018-03-13?10:34??MyBS83B08C\MyBS83B08C.c
?????文件????????231??2018-03-08?17:16??MyBS83B08C\MyBS83B08C.opt
?????文件????????798??2018-03-13?10:34??MyBS83B08C\MyBS83B08C.pjt
?????文件???????4623??2018-03-13?10:34??MyBS83B08C\MyBS83B08C.pjtx
?????文件???????2397??2018-03-13?10:34??MyBS83B08C\MyBS83B08C.pjw
?????文件??????33366??2018-03-13?10:18??MyBS83B08C\output\MyBS83B08C.ASM
?????文件???????4096??2018-03-13?10:18??MyBS83B08C\output\MyBS83B08C.bin
?????文件???????4520??2018-03-13?10:18??MyBS83B08C\output\MyBS83B08C.CV
?????文件???????6564??2018-03-13?10:18??MyBS83B08C\output\MyBS83B08C.DBG
?????文件??????26646??2018-03-13?10:18??MyBS83B08C\output\MyBS83B08C.list
?????文件??????50741??2018-03-13?10:18??MyBS83B08C\output\MyBS83B08C.LST
?????文件???????8238??2018-03-13?10:18??MyBS83B08C\output\MyBS83B08C.MAP
?????文件?????????66??2018-03-08?17:17??MyBS83B08C\output\MyBS83B08C.MEM
?????文件???????4337??2018-03-13?10:18??MyBS83B08C\output\MyBS83B08C.MTP
?????文件??????10495??2018-03-13?10:18??MyBS83B08C\output\MyBS83B08C.OBJ
?????文件???????4144??2018-03-13?10:18??MyBS83B08C\output\MyBS83B08C.TSK
?????文件???????5577??2018-03-13?10:18??MyBS83B08C\output\startup1_l.LST
?????文件???????1306??2018-03-13?10:18??MyBS83B08C\output\startup1_l.OBJ
?????文件???????2296??2017-03-06?11:17??MyBS83B08C\startup1_l.asm
?????目錄??????????0??2018-03-11?15:24??MyBS83B08C\BS83B08C_CTOUCH_V500
?????目錄??????????0??2018-03-13?10:18??MyBS83B08C\output
?????目錄??????????0??2018-03-13?10:34??MyBS83B08C
-----------?---------??----------?-----??----
???????????????185383????????????????????26
- 上一篇:基于邊緣的圖像分割方法
- 下一篇:串口調試助手.rar
評論
共有 條評論