|
现场直播Pic学习过程(3)
昨天的程序没有问题, 我因为用的是5.0plug版,编译器的问题。 我还以为拣着个宝贝。 后来我用7.0LITE 版,问题解决, 不过DELAYMS不能超过255于是请按以下 延时程序。
delasub: delayms (255) return
但是,PORTA。4的问题还是没有解决。
告诉大家一个好消息,LITE 版和PRO版唯一区别是LITE版只能使用16F84 对于学习毫无障碍。说明书上的PRO版函数LITE一样可以用。但最多32行。 翻翻书没有详细介绍16F84的文章,只能看看英文的,总不及中文好理解。 告诉大家另一个好消息,我已经把LETBASIC的英文说明书翻译得差不多了。即将上传。
另英文版的说明书21页的LED接法,按我的判断应该是错的,接反了,反正我的接法跟他不一样,我的测试板用的好好的
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' '今天2001/4/30,想写一个关于在国外网站很流行的小玩具, '叫旋转钟,原理是用一排若干个发光LED动态显示图形的方法。 '其实,说穿了很简单,用一个马达按一定的速度带动LED旋转。 '等于X轴的扫描,LED用于Y轴的显示,如此构成一个显示平面。 '可以显示文字,简单的图形。 '国内有人把他作成一根棒,按一定速度挥动,也可以显示图案 '听说还那了专利,我忘了是哪个网站上有。 '为了简单起见,我这里还是用挥动来处理X轴,按旋转钟处理Y轴 '显示看上去应该有点变形。本程序只写了一个单向挥动的结果, '如果需要反向回来也显示图案需把X的矢量反过来20>>1 '假设挥动一次,需要0.5秒,挥动距离是0.4米,把他分成20格 '那么就构成了一个12x20的显示距阵,X轴扫描频率为250毫秒 '如下图,我只需要一个8*10的显示距阵。 'x>> 1 2 3 4 5 6 7 8 9 10 'B0 1 1 1 1 0 0 0 0 0 1 'B1 1 0 0 0 0 0 0 0 0 1 'B2 1 0 0 0 0 0 0 0 0 1 'B3 1 1 1 0 1 0 0 1 0 1 'B4 1 0 0 0 1 0 0 1 0 1 'B5 1 0 0 0 1 0 0 1 0 1 'B6 1 0 0 0 1 0 0 1 0 1 'B7 1 0 0 0 0 1 1 0 0 1 '大家看见我要显示的文字是:Fu1 '这个东西可是有用,等我开一个噪音演唱会时,可以用来给我捧场,谢谢。 '如果加上输入端子,用挥动来触发显示,那已经是一个很完善的产品了。 ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
DEVICE 16F84 DEFINE PORTB=0000000 DEFINE PORTA=0000000 DIM NO DATA %11111111,%10010000,%10010000,%00011110,%00000001,%00000001,%00011110,%00000000,%11111111 '先定义一个库文件储存我的FU1关键字
main: READ NO '读DATA里的第一个数,当下一个循环来到时,自动读第二个数 outb (no) '往B端口送数,让他如第一排显示(x1) gosub delasub gosub main
delasub: delayms (50) return
END
******晃到我手酸,还没看出效果,但是接上马达应该很好。 我从慢速看时看到了效果。大家玩玩,送一个国外的图让大家好明白。
有些网友可能问,为什么没见我学名令 我没学命令,因为我觉得很多东西都是随手捻来,我觉得他天生就是我这种笨人用的。 不过我还是会把函数语句的中文说明放上网的。 |
|