搜索
bottom↓
回复: 68

新手,发布一个自己做的M16+12864+18B20小小万年历

[复制链接]

出0入0汤圆

发表于 2007-7-26 17:07:48 | 显示全部楼层 |阅读模式
自己瞎弄了个M16的板子,弄个带显示温度的万年历.

代码还是不够优化,请哪位高手,无聊的时候帮我优化一下代码.



点击此处下载armok01163532.rar

点击此处下载armok01163533.rar
头像被屏蔽

出0入0汤圆

发表于 2007-7-26 17:08:47 | 显示全部楼层
Cool ,谢谢。

出0入0汤圆

 楼主| 发表于 2007-7-26 17:12:34 | 显示全部楼层
今天没带手机数据线,传不上照片!

明天补上!

今天第一次注册会员,希望大家多多指点!

出0入0汤圆

 楼主| 发表于 2007-7-28 16:03:00 | 显示全部楼层
补上部分图片,怎么没人顶呀!

心碎了!!!









出0入0汤圆

发表于 2007-7-28 22:01:28 | 显示全部楼层
我来帮你顶,那天我也做个玩下,谢谢你的开源

出0入10汤圆

发表于 2007-7-28 22:36:03 | 显示全部楼层
顶了,哪天我换个彩屏的。

出0入0汤圆

发表于 2007-7-29 08:59:59 | 显示全部楼层
lcd12864是不是ks1008驱动的,你的原理图上的键盘画的也够专业啊?

出0入0汤圆

发表于 2007-7-29 12:00:50 | 显示全部楼层
LCD的具体型号(驱动芯片)?

出0入0汤圆

 楼主| 发表于 2007-7-30 10:27:42 | 显示全部楼层
呵呵

随便做的板子,没用DS1302,可能会保障不了时间的准确.



至于那个键盘,让大家见笑啦,哈哈!



液晶屏的具体型号是:SD-DM12864C.

这款液晶屏自带驱动芯片,直接与单片机连接就OK了.



我来把液晶屏的资料传上来.

点击此处打开armok01164239.pdf

出0入0汤圆

发表于 2007-7-30 11:41:33 | 显示全部楼层
SD-DM12864C 还要分左右屏控制的,不喜欢这样的屏~~ 呵呵~

出0入0汤圆

发表于 2007-7-30 14:08:43 | 显示全部楼层
好,好东西

这哪里是新手啊,哈哈

出0入0汤圆

 楼主| 发表于 2007-7-31 15:14:43 | 显示全部楼层
怎么图片显示不了了?

出0入0汤圆

发表于 2007-7-31 15:47:03 | 显示全部楼层
是啊,图片显示不了了,以前帖的图片都不能显示.呵呵,又有新问题了.

出0入0汤圆

发表于 2007-11-8 09:09:09 | 显示全部楼层
#define  CC4EA  CSPAC+32  /*年  */

const unsigned char HZDot[] = {/*年   CC4EA */
0x40,0x20,0x10,0x0C,0xE3,0x22,0x22,0x22,0xFE,0x22,0x22,0x22,0x22,0x02,0x00,0x00,
0x04,0x04,0x04,0x04,0x07,0x04,0x04,0x04,0xFF,0x04,0x04,0x04,0x04,0x04,0x04,0x00,
,.....}

const unsigned int nian[] = {CC4EA};
DispChinese(nian,LCDRowA,2,1,DISP_WHITE);

本人是初学者,问大家一个问题:程序里汉字的宏我看不明白,如: 这个“年”字,#define  CC4EA  CSPAC+32  中CC4EA,CSPAC的确定,希望高手指点一二!

出0入0汤圆

发表于 2007-11-8 09:16:45 | 显示全部楼层
一个字符用一个数组来定义是不是 可以减少宏的大小呢?

写的不错收益非浅,谢谢了!

出0入0汤圆

发表于 2007-11-8 11:49:17 | 显示全部楼层
多谢LZ的代码,有时间会学习的

出0入0汤圆

发表于 2007-11-9 17:00:42 | 显示全部楼层
怎么看不到LCD的D0--D7的定义

出0入0汤圆

发表于 2007-11-9 17:15:33 | 显示全部楼层
图片显示不了。。。

出0入0汤圆

发表于 2007-11-9 17:21:02 | 显示全部楼层
抄都不成功.LZ怎么看不到LCD的D0--D7的定义 ?

出0入0汤圆

发表于 2007-11-9 19:15:30 | 显示全部楼层
各位大狭.看一下她的程序是不是有问题啊.怎么做不成功啊

出0入0汤圆

发表于 2007-11-9 21:30:19 | 显示全部楼层
LZ怎么抄你的都不行啊?熔丝怎么设啊,会不会与jtag冲突.

出0入0汤圆

 楼主| 发表于 2007-11-9 21:45:30 | 显示全部楼层
呵呵,几天没涞了,最近在温州出差.
回lmwfq 的问题:
1,D0--D7 不用定义的,直接用PORTA,比如PORTA=x;
2,熔丝位的设置,选择8M的外部晶振,随便设置就OK了!
哦,软件用的是ICC

出0入0汤圆

发表于 2007-11-9 22:23:13 | 显示全部楼层
怎么不行啊.RS RW E CS1 S2会不会与jtag冲突?

出0入0汤圆

发表于 2007-11-10 09:14:22 | 显示全部楼层
不要18B20能不能工作的?

出0入0汤圆

发表于 2007-11-10 17:01:32 | 显示全部楼层
终于搞定,原来真的跟JTAG有冲突,


出0入0汤圆

发表于 2007-11-15 23:11:20 | 显示全部楼层
wendudata = readTempDS18B20();
                n = wendudata;
                n = (n * 0.625)+0.5;
                wendudata = n;
                //DispAscii((wendudata/10000)+48,LCDRowD,6,DISP_WHITE);
                //DispAscii(((wendudata%10000)/1000)+48,LCDRowD,7,DISP_WHITE);
                DispAscii((((wendudata%10000)%1000)/100)+48,LCDRowD,7,DISP_WHITE);
                DispAscii(((((wendudata%10000)%1000)%100)/10)+48,LCDRowD,8,DISP_WHITE);
楼主这一段程序是温度校正吗?

出0入0汤圆

 楼主| 发表于 2007-11-17 00:16:50 | 显示全部楼层
对!
乘个0.625

出0入0汤圆

发表于 2007-11-26 09:19:48 | 显示全部楼层
我觉得楼主的程序有许多精华之处,但也有许多不尽意的地方!如ACS宏定义有近2K的废码,主程序有的地方不够简捷,星期不随天增长!温度不能测0下,温度数值是乘0.625,还是乘0.0625?

出0入0汤圆

 楼主| 发表于 2007-11-26 23:02:46 | 显示全部楼层
呵呵,有什么精华呀.
我是菜鸟一名,多谢批评指教.
也请把修正的代码奉贤上

出0入0汤圆

发表于 2007-11-28 08:58:57 | 显示全部楼层
回去看看!!!

出0入0汤圆

发表于 2007-11-28 15:55:28 | 显示全部楼层
我也搞了个这样的东西,只是单片机是用51的,最近打算弄到m16上来,正在学 呵呵

出0入0汤圆

发表于 2007-11-28 15:58:52 | 显示全部楼层
发现我的积分才16分啊

出0入0汤圆

发表于 2007-12-17 16:34:52 | 显示全部楼层
ding

出0入0汤圆

发表于 2008-1-4 00:59:54 | 显示全部楼层
读温度的函数有错误,原来的为:
//读DS18B20温度
unsigned int readTempDS18B20(void)
{
        unsigned char tempL=0;
        unsigned char tempH=0;
        unsigned int x=0;
        unsigned char i=0;
        i=resetDS18B20();
        writeByteDS18B20(0xCC);         //跳过ROM
        writeByteDS18B20(0x44);                //启动温度转换
        delay_ms_(40);
        i=resetDS18B20();
        writeByteDS18B20(0xCC);                //跳过ROM
        writeByteDS18B20(0xBE);                //读数据
        tempL=readByteDS18B20();
        tempH=readByteDS18B20();
        x=(tempH<<8)|tempL;
        delay_us(100);
        return(x);
}
应改为:
//读DS18B20温度
unsigned int readTempDS18B20(void)
{
        unsigned char tempL=0;
        unsigned int tempH=0;    <------此处应改为int,不能用char,否则转换出来的温度不对。
        unsigned int x=0;
        unsigned char i=0;
        i=resetDS18B20();
        writeByteDS18B20(0xCC);         //跳过ROM
        writeByteDS18B20(0x44);                //启动温度转换
        delay_ms_(40);
        i=resetDS18B20();
        writeByteDS18B20(0xCC);                //跳过ROM
        writeByteDS18B20(0xBE);                //读数据
        tempL=readByteDS18B20();
        tempH=readByteDS18B20();
        x=(tempH<<8)|tempL;
        delay_us(100);
        return(x);
}

出0入0汤圆

发表于 2008-8-21 15:46:52 | 显示全部楼层
不错,试着做一个

出0入0汤圆

发表于 2009-7-2 09:49:29 | 显示全部楼层
dddddddddddddddd

出0入0汤圆

发表于 2010-1-22 00:07:59 | 显示全部楼层
谢谢楼主了,最近想做个万年历,来找些资料

出0入0汤圆

发表于 2010-1-22 01:41:53 | 显示全部楼层
mark~

出0入0汤圆

发表于 2010-1-22 10:08:54 | 显示全部楼层
学习了,先分析下楼主的程序,我自己还的改进下,我手头上只有mega128和19264.也要弄出同样效果。哈哈

出0入0汤圆

发表于 2010-1-27 14:57:56 | 显示全部楼层
回复【13楼】xshzwx
-----------------------------------------------------------------------

我也对这个地方头疼,呵呵

出0入0汤圆

发表于 2010-3-13 17:33:31 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-5-6 13:41:37 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-6-28 00:32:35 | 显示全部楼层
学习!

出0入4汤圆

发表于 2010-6-28 02:04:40 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-6-28 06:32:57 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-6-28 10:13:43 | 显示全部楼层
回复【13楼】xshzwx
#define  cc4ea  cspac+32  /*年  */
const unsigned char hzdot[] = {/*年   cc4ea */
0x40,0x20,0x10,0x0c,0xe3,0x22,0x22,0x22,0xfe,0x22,0x22,0x22,0x22,0x02,0x00,0x00,
0x04,0x04,0x04,0x04,0x07,0x04,0x04,0x04,0xff,0x04,0x04,0x04,0x04,0x04,0x04,0x00,
,.....}
const unsigned int nian[] = {cc4ea};
dispchinese(nian,lcdrowa,2,1,disp_white);
本人是初学者,问大家一个问题:程序里汉字的宏我看不明白,如: 这个“年”字,#define  cc4ea  cspac+32 ......
-----------------------------------------------------------------------
起始点是cspac 0x0000,没32个数据是一个汉字,所以都要+32.解释不当的地方还望指点。

出0入0汤圆

发表于 2010-6-28 10:21:03 | 显示全部楼层
站长啊,不要老是说cool,太单调了

出0入0汤圆

发表于 2010-7-16 14:39:28 | 显示全部楼层
学习!!!!

出0入0汤圆

发表于 2010-7-16 15:44:12 | 显示全部楼层
学习了!!

出0入0汤圆

发表于 2010-7-18 09:31:46 | 显示全部楼层
学习了!!

出0入0汤圆

发表于 2010-9-9 20:49:09 | 显示全部楼层
学习一下,太强了

出0入0汤圆

发表于 2010-9-9 22:19:47 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-10-2 03:40:45 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-10-2 10:49:27 | 显示全部楼层
学习。。。

出0入0汤圆

发表于 2010-10-5 00:41:58 | 显示全部楼层
mark

出0入0汤圆

发表于 2010-10-21 18:30:08 | 显示全部楼层
收藏了

出0入0汤圆

发表于 2010-10-27 12:43:35 | 显示全部楼层
楼主好强大,我什么时候才能学会呀。

出0入0汤圆

发表于 2010-11-25 15:49:08 | 显示全部楼层
不错

出0入0汤圆

发表于 2010-12-1 22:05:12 | 显示全部楼层
不错 ,标记一下

出0入0汤圆

发表于 2010-12-1 23:41:09 | 显示全部楼层
不错,标记

出0入0汤圆

发表于 2010-12-16 22:31:56 | 显示全部楼层
MARK

出0入0汤圆

发表于 2011-3-7 19:38:53 | 显示全部楼层
很强大

出0入0汤圆

发表于 2011-3-7 22:39:08 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-7 23:06:02 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-3-10 09:36:01 | 显示全部楼层

出0入0汤圆

发表于 2011-6-30 00:02:06 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-11-20 08:44:46 | 显示全部楼层
学习了。。。

出0入0汤圆

发表于 2011-11-20 09:00:09 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-11-20 21:01:15 | 显示全部楼层
很有借鉴的地方,谢谢
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-5-8 08:40

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表