论坛买的JD19264C+atmega64a编程万年历,瞎剁手的后果:苦逼AVR之路
先上一个做完的图初学单片机,刚有点入门STC,缺屏幕,论坛中看到有人出屏幕,就买了几个 http://www.crystalradio.cn/forum.php?mod=viewthread&tid=791061,原机是JD19264C屏幕+Atmega64A的处理器,原本打算把屏幕拆下来用STC点点试试。
12月份卖家发来了,拿到手初上电还可以,除了有一个屏幕有较大的划伤之外,都还能正常使用。看看板子,做工还不错,于是强迫症翻了,非琢磨用原机的MCU,打算做个时钟。
http://www.crystalradio.cn/data/attachment/forum/201511/29/181006s3d328f1bbwaegha.jpg
研究了一番,MD,AVR和STC不一样,苦逼之路就此开始了
要下载程序,得先做一个下载器,先做最简单的,并口下载器。通过74hc244芯片直接可完成烧写。
手里有一个之前留下的74hc244, 贴片的,找了个转接板,开做。耗费几天,还真给做成了
通过接口连接到对应的引脚上,能下载。
并口下载线对应Atmega64的引脚与上图稍有不一样,网上有资料
上位机用Progisp1.72
苦逼之一: 正常用的电脑,没有并口,破烂里翻出来一个IBM R50e, 迅驰的带并口,老牛一般慢。
笨法子应对一: 花了四十块,买了一个PM较高的CPU,两条1G的DDR1本条,先升级了下,凑合用。 用网上查到的资料,用并口下载线,烧写一个USB的USBISP来用。
好么,开始了
电路
烧写固件。反复了几次,还真给做出来了。
USBASP,用了一片M8, 可以直接接USB口,上位机还是用的ProgISP。正常工作的电脑终于可以进行下载了,用了没两天,不甘心啊,每个板子都得这么难看的飞好几条线。原板子带了一个引出的jtag接口。不行,我得用那个,省劲,好看。折腾么。。。。
比较简单能用jtag的,就只有Jtagice了,上位机用atmel studio(5.0以下版本,到了新版本已经不支持这个工具了)。
用M16一片,CH340G一片,各种接各种飞,各种尝试,折腾了有三四天,也终于做出来了。
新手,手工不好,各位前辈不要各种奸笑。。。
jtagice默认不带供电给目标板,并采用标准Jtag口,与目标板的接口对接需要各种杜邦,费劲,就直接在空余的板处做了个六脚插针,可直接插在目标板子上并完成供电。
目标板引出的接口上焊了个插座,自己剪的6P的,直接插上,齐活。至此工具方面的准备,算是折腾差不多了,二楼继续 接楼上,来一个工具接好后的图
屏幕画面是摸索点亮屏幕过程的中间测试程序。
板子是3.3v的,Jtagice 3.3V供电选用了ASM1117-3.3 。
原板上面带3.3V供电的字库,虽然没啥用,但也懒得拆了,天晓得以后会不会有可能再用呢, 温度湿度采集用的DHT11
http://img3.imgtn.bdimg.com/it/u=2019874593,1129483590&fm=21&gp=0.jpg
直接用网上的图了
时间芯片用的是DS3231模块, 马云家两块多的那种。
开始一点点熟悉avr,真的是从零开始啊,除了stc研究了几个月的半生不熟的C语言,其他一概不懂。 先点屏幕,翻datasheet,一点点扣19264屏怎么点亮的。
然后是自己做字库,抄别人的DHt11程序写读温度湿度, 原打算用定时器写时间,发现误差太大,调试太困难,就直接上了DS3231, 需要说明的是,这个两块多的DS3231,号称可以5V供电,但是5V供电误差太大,我这个能一天慢几分钟,改3.3v供电,精度还可以,跑一周,肉眼分辩不出有误差。
抄别人的读写24c02的程序写读写ds3231, 足足一月有余,折腾出了目前手里凑合能用的东西。
写完了回头看看,觉得自己玩,用AVR实在是不划算,自己做着玩的话,还是STC简单,研究AVR的功夫,还不如直接上ARm了。 瞎剁手+强迫症=没事找抽型的Diyer。
把目前用的hex发出来,如果有能用的上的,直接下吧,后续估计还会持续完善中。
目前的hex,四十多K,一半以上是字库,AVR的倒霉设计,不知道怎么想的,还有个Data flash Memory, 只有4K,字库放不下,只能动态存储在program Flash Memory中。
DHT11的四条腿,1和4接VCC,GND, 2脚焊接到板子上已有的一个孔,对应MCU第9脚,可以不用飞线,掰弯了直接能焊上。 DS3231的SDA SCL 只能飞线了,并且需要加上拉电阻到5V电源。 用了一片ASM1117做5Vto 3.3V给板子和DS3231供电。
纯手工的值得支持,看得出花了不少精力:lol 赞 屏幕我没有买到,可惜了 这手工不服不行呀。 虽然有点不拘小节,但楼主才艺过人,令人佩服! 佩服,软件硬件都自己来。 真是乐哉其中呀 楼主学习能力不错,还是建议不要老抓住stc不放
高级点的单片机能实现高级的功能,另外底层驱动不用太较真,都有库函数 甚至可视化编程生成文件。
可以尝试下stm32或者 arduino
喜欢折腾的人永垂不朽! huarana 发表于 2016-1-16 19:10 static/image/common/back.gif
楼主学习能力不错,还是建议不要老抓住stc不放
高级点的单片机能实现高级的功能,另外底层驱动不用太较真 ...
多谢金言,已经入手了几片STM32,准备试试看了。
主要原因是手里的STC,已经坏了两片了,40%的损坏率。。。。无语了 楼主这个时钟怎么调整? szkssyj 发表于 2016-1-23 19:56 static/image/common/back.gif
楼主这个时钟怎么调整?
后续有改进
使用了下面的3个按钮,最左侧为set ,左二为减, 左三为加
set为 时、分、年、月、日5种状态切换,改完后存入3231
定时器扫描,因为用3231,反复调整的几率不大,所以修改就简单的攒了下,没做特别修正。
这是带修改版本
这屏上有硬字库芯片,楼主有使用不? fsss007 发表于 2016-1-25 18:29 static/image/common/back.gif
这屏上有硬字库芯片,楼主有使用不?
没使用,那个意义不大,只是小字,还得研究怎么通信,费劲就没用
做别的就准备试试看了,字库大了太占地方