




已阅读5页,还剩8页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Ch452程序代码/*/* FileName: ch452.h */* Function: */*-History-*/* Author | Date | Status | Description */* wang | 2011/8/04 | create | */* | | | */*/#ifndef _CH452_H#define _CH452_H/#ifndef_CH452A_H_/#define_CH452A_H_/*Define command*/#defineCMD_SYSPARA0x68/definiton for system parameter commanddefault:0#defineDISP0x01/0:disable 1:enable#defineKEYB0x02/0:disable 1:enable#define WDOG0x04/0:close1:open#defineDPLR0x08/0:low level1:high level#defineSSPD0x10/0:low speed1:high speed#defineINTM0x20/0:low level1:low level pulse#defineGPOE0x40/0:all DIG as driver1:DIG6 DIG7 as GPIO#defineCMD_DISPARA0x6A/definiton for display parameter commanddefault:0#defineMODE0x80/0:No decode1:BCD decode/#defineLIMIT0x70/bit6bit4 range from 000 to 111#defineINTENSITY0x0F/bit3bit0 range from 0000 to 1111#defineCMD_DISPDAT0x70/加载字数据前八位#defineCMD_GETKEY0x6E/键盘前八位#defineCMD_ACKEN0x6E/2线接口应答前八位/*Function prototype*/void ch452a_two_ack(void);void ch452a_Init (void);void ch452a_sendcmd(unsigned char cmd,unsigned char paradata);/写命令unsigned char ch452a_getkey(void);/读取按键unsigned char CH452_ReadKeyboard();#define KEY_UP0x59#define KEY_DOWN0x58#define KEY_LEFT0x5B#define KEY_RIGHT0x5A#define KEY_SET0x48#define KEY_OK0x40#endif主程序代码:/* FileName: ch452.c * Function: *-History-* Author | Date | Status | Description * wang | 2011/7/28 | create | * | | | */#include STC_NEW_8051.h#includeIIC.h#includeCh452.hsbit SCL=P10;sbit SDA=P11;/ FileName:ch452a_two_ack() / Function:Init_ack /void ch452a_two_ack()unsigned char i,wr_data;wr_data=CMD_ACKEN&0xfe;IIC_start();/* start condition */for(i=0;i8;i+)if(wr_data&0x80)/判断高位数据SDA=1;elseSDA=0;wr_data=1;/让高位数据往左移delays(1);SCL=1;/数据的写要在时钟为高电平时delays(4);SCL=0;delays(5); /* nine clock */SCL=0;delays(1);SDA=1;delays(4);SCL=1;delays(5);/* send data */for(i=0;i8;i+)SCL = 0;delays(1);SDA= 0;delays(4);SCL= 1;delays(5);IIC_stop();/ FileName:ch452a_Init() / Function:Init /void ch452a_Init(void)unsigned char cmddata,cmdadr;ch452a_two_ack();cmddata=CMD_SYSPARA;/系统参数地址cmdadr=DISP| KEYB & (INTM) & (DPLR);/系统参数数据IIC_writedata(cmddata,&cmdadr,1);cmddata=CMD_DISPARA;/显示参数地址cmdadr=MODE; IIC_writedata(cmddata,&cmdadr,1);/FunctionName:ch452a_sendcmd()/Description:send command to ch452a /void ch452a_sendcmd (unsigned char cmd,unsigned char paradata)unsigned char cmddata,cmdadr;cmddata=cmd;cmdadr=paradata;IIC_writedata(cmddata,&cmdadr,1); /FunctionName:ch452a_getkey()/Description:get key value from ch452a /unsigned char ch452a_getkey()unsigned char cmddata,keycode;/unsigned char*pData=&revdata;cmddata=CMD_GETKEY | 0x01; keycode=IIC_readdata(cmddata);return keycode;/*unsigned char CH452_ReadKeyboard()unsigned char recvdata,cmddata; unsigned char ack;/ uchar* pRecvData = &recvdata;cmddata = CMD_GETKEY | 0x01;IIC_start(); /启动IIC_send(cmddata); /发送从机地址ack=IIC_re_ack(ack);if(ack=0)recvdata = IIC_accept(cmddata);IIC_wr_ack(0); /主机发送应答给从机IIC_stop();else IIC_stop(); /ack条件不满足终止发送数据return recvdata
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- GB/T 20206-2025银行业印鉴核验系统技术规范
- GB 15760-2025金属切削机床安全防护通用技术规范
- GB/T 10267.1-2025金属钙分析方法第1部分:氯离子选择性电极法测定氯
- 2025年安全员考试高频难点题库
- 2025年政府会计准则医院考题预测
- 吉安县2025届中考猜题数学试卷含解析
- 迎新年春节致辞模板
- 2025年电力行业高级专家认证考试模拟题电力电缆方向及答案解析
- 2025年本科院校保卫处面试模拟题与参考答案
- 2025年事业单位地震招考高频题解
- 2025海南省老干部服务管理中心招聘事业编制人员6人(第1号)考试备考题库及答案解析
- 2025年内江市总工会公开招聘工会社会工作者(14人)笔试模拟试题及答案解析
- 2025云南辅警笔试题目及答案
- 2025四川内江市总工会招聘工会社会工作者14人笔试备考试题及答案解析
- 2025-2026学年湘教版(2024)初中数学八年级上册教学计划及进度表
- 2025至2030中国公安行业发展趋势分析与未来投资战略咨询研究报告
- GB/T 45763-2025精细陶瓷陶瓷薄板室温弯曲强度试验方法三点弯曲或四点弯曲法
- 全过程工程咨询投标方案(技术方案)
- (高清版)DZT 0388-2021 矿区地下水监测规范
- 有害物质污染源识别与评价表
- 餐具洗消保洁制度管理办法
评论
0/150
提交评论