




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、附录1 电路原理图附录2 程序/*程序功能:在12864液晶上显示重量-测试说明:观察液晶显示*/#include typedef unsigned char uchar;typedef unsigned int uint;extern const unsigned char shuzi_table;float e;/*全局变量*/uchar key_pressed; /按键是否被按下:1-是,0-否uchar key_val; /存放键值uchar key_flag; /按键是否已放开:1-是,0-否/*设置键盘逻辑键值与程序计算键值的映射*/uchar key_map = 0,1,2,3,
2、4,5,6,7,8,9,10,11,12,13,14,15;#define lcd_datain p4dir=0x00 /数据口方向设置为输入#define lcd_dataout p4dir=0xff /数据口方向设置为输出#define lcd2mcu_data p4in#define mcu2lcd_data p4out#define lcd_cmdout p3dir|=0x07 /p3口的低三位设置为输出#define lcd_rs_h p3out|=bit0 /p3.0#define lcd_rs_l p3out&=bit0 /p3.0#define lcd_rw_h p3out|=
3、bit1 /p3.1#define lcd_rw_l p3out&=bit1 /p3.1#define lcd_en_h p3out|=bit2 /p3.2#define lcd_en_l p3out&=bit2 /p3.2/*写入内容待显示内容*/const uchar hang1 = 小小苏电子称系统;const uchar hang2 = 净重: g ;const uchar hang3 = 总价: 元;const uchar hang4 = 单价 /kg;const uchar hang5 = 萝卜;const uchar hang6 = 豆角;const uchar hang7 =
4、土豆;const uchar hang8 = 白菜;const uchar hang9 = 苹果;const uchar hang10 = 香蕉;const uchar hang11 = 橘子;const uchar hang12 = 桃子;const uchar hang13 = 猪肉;const uchar hang14 = 羊肉;const uchar hang15 = 牛肉;const uchar hang16 = 鸡肉;const uchar hang17 = 山药;const uchar hang18 = 生姜;const uchar hang19 = 木耳;/*函数名称:init
5、_keypad功 能:初始化扫描键盘的io端口参 数:无返回值 :无*/void init_keypad(void) p1dir = 0xf0; /p1.0p1.3设置为输入状态, p1.4p1.7设置为输出状态 p1out |= 0xf0; / p1.4p1.7输出低电平 key_flag = 0; key_pressed = 0; key_val = 5;/*函数名称:check_key功 能:扫描键盘的io端口,获得键值参 数:无返回值 :无*/void check_key(void) uchar row ,col,tmp1,tmp2; tmp1 = 0x80; for(row = 0;
6、row =1; if (p1in & 0x0f) 0x0f) /是否p1in的p1.0p1.3中有一位为0 tmp2 = 0x01; / tmp2用于检测出那一位为0 for(col = 0;col 4;col+) / 列检测 if(p1in & tmp2) = 0x00) / 是否是该列,等于0为是 key_val = key_maprow * 4 + col; / 获取键值 return; / 退出循环 tmp2 0;tmp-);/*函数名称:key_event功 能:检测按键,并获取键值参 数:无返回值 :无*/void key_event(void) uchar tmp; p1out
7、&= 0x00; / 设置p1高四位全为0,等待按键输入 tmp = p1in; / 获取 p1in if (key_pressed = 0x00)&(tmp & 0x0f) 0;i-) _nop(); /*函数名称:delay_nms功 能:延时n个1ms的时间参 数:n-延时长度返回值 :无*/void delay_nms(uint n) uint i; for(i = n;i 0;i-) delay_1ms();/*函数名称:write_cmd功 能:向液晶中写控制命令参 数:cmd-控制命令返回值 :无*/void write_cmd(uchar cmd) uchar lcdtemp
8、= 0; lcd_rs_l; lcd_rw_h; lcd_datain; do /判忙 lcd_en_h; _nop(); lcdtemp = lcd2mcu_data; lcd_en_l; while(lcdtemp & 0x80); lcd_dataout; lcd_rw_l; mcu2lcd_data = cmd; lcd_en_h; _nop(); lcd_en_l;/*函数名称:write_data功 能:向液晶中写显示数据参 数:dat-显示数据返回值 :无*/void write_data(uchar dat) uchar lcdtemp = 0; lcd_rs_l; lcd_r
9、w_h; lcd_datain; do /判忙 lcd_en_h; _nop(); lcdtemp = lcd2mcu_data; lcd_en_l; while(lcdtemp & 0x80); lcd_dataout; lcd_rs_h; lcd_rw_l; mcu2lcd_data = dat; lcd_en_h; _nop(); lcd_en_l; /*函数名称:ini_lcd功 能:初始化液晶模块参 数:无返回值 :无*/void ini_lcd(void) lcd_cmdout; /液晶控制端口设置为输出 delay_nms(500); write_cmd(0x30); /基本指令
10、集 delay_1ms(); write_cmd(0x02); / 地址归位 delay_1ms();write_cmd(0x0c); /整体显示打开,游标关闭 delay_1ms();write_cmd(0x01); /清除显示 delay_1ms();write_cmd(0x06); /游标右移 delay_1ms();write_cmd(0x80); /设定显示的起始地址/*函数名称:disp_hz功 能:控制液晶显示汉字参 数:addr-显示位置的首地址 pt-指向显示数据的指针 num-显示字符个数返回值 :无*/void disp_hz(uchar addr,const uchar
11、 * pt,uchar num) uchar i; write_cmd(addr); for(i = 0;i num;i+) write_data(*(pt+); /*函数名称:disp_wei功 能:控制液晶显示汉字参 数:addr-显示位置的首地址 pt-指向显示数据的指针 num-显示字符个数返回值 :无*/void disp_wei(uchar addr,int c,char num) uchar i; write_cmd(addr); for(i = 0;i 400) a=g/1000; b=g%1000/100; c=g%1000%100/10; d=g%1000%100%10; else a=b=c=d=0;y=0; write_cmd(0x93);write_data(a+0x30);write_data(b+0x30); write_data(c+0x30);write_data(d+0x30); delay_nms(200); write_cmd(0x8b);write_data(y/100000+0x30); write_data(y
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 抵债资产税务培训课件
- 长春医学高等专科学校《景观设计》2023-2024学年第二学期期末试卷
- 基于AI技术的在线教育资源自动评测机制研究
- 提升学习成效教学策略与学习动机的融合
- 无锡科技职业学院《名师成长案例》2023-2024学年第二学期期末试卷
- 游戏化交互设计在商业会议中的运用
- 辽宁冶金职业技术学院《国际投资》2023-2024学年第二学期期末试卷
- 湘潭医卫职业技术学院《创意图像设计》2023-2024学年第二学期期末试卷
- 2024年度浙江省三支一扶之三支一扶行测自我检测试卷B卷附答案
- 2024年度河南省护师类之社区护理主管护师考前自测题及答案
- 工程量计算书(全部)
- 经侦总论试题
- 陕西省安康市教育联盟2023-2024学年高一下学期期末考试数学试卷
- 2023-2024学年景德镇市珠山区数学五年级第二学期期末监测试题含解析
- 小镇文旅康养项目可研报告【健康养老】【旅游康养】
- 2024广西公需课高质量共建“一带一路”谱写人类命运共同体新篇章答案
- EHS专项施工EHS管理组织机构
- 2024年南安市国有资本投资运营有限责任公司招聘笔试冲刺题(带答案解析)
- T/CEC 143-2017 超高性能混凝土电杆完整
- MOOC 工程电磁场与波-浙江大学 中国大学慕课答案
- 清罐应急预案
评论
0/150
提交评论