我第一次搞ARM7,要做个产品了_续2,当前进度。

[复制链接]
2410|0
 楼主| JIFENG 发表于 2008-2-23 16:47 | 显示全部楼层 |阅读模式
1.将电路板送上电,发现焊接的三个大的滤波电容方向错了,注意这种方形的黄色的1808规格贴片电容应当是钽电容,方向是有横杠的一端是正极。<br />2.由于我是用的T6963的液晶屏,电压5V,所以使用电阻与S64连接。S64需要这样设置<br />//关闭上拉电阻<br />AT91F_PIO_CfgPullup(AT91C_BASE_PIOA,LCD_MASK|LCD_data);<br />//输出开漏<br />AT91F_PIO_MultiDriverEnable(AT91C_BASE_PIOA,LCD_MASK|LCD_data);<br />这样就可以产生5V的电平了,但是很不行,我原来的C51上的程序还是不能移植过来。<br />这是T6963.C的一部分。<br />#include&nbsp;&quot;T6963.h&quot;<br /><br />void&nbsp;wait&nbsp;(&nbsp;void&nbsp;)<br />{<br />&nbsp;&nbsp;unsigned&nbsp;char&nbsp;i;&nbsp;<br />&nbsp;&nbsp;for(i=50;i&gt0;i--)&nbsp;&nbsp;{}<br />}<br />void&nbsp;RWCheck(void)<br />{<br />&nbsp;&nbsp;unsigned&nbsp;char&nbsp;i;&nbsp;<br />&nbsp;&nbsp;for(i=50;i&gt0;i--)&nbsp;&nbsp;{}<br />}<br />void&nbsp;AutoWCheck(void)<br />{&nbsp;<br />&nbsp;&nbsp;unsigned&nbsp;char&nbsp;i;<br />&nbsp;&nbsp;for(i=50;i&gt0;i--)&nbsp;{}<br />}<br />/*&nbsp;&nbsp;&nbsp;&nbsp;控制指令&nbsp;&nbsp;&nbsp;&nbsp;*/<br />void&nbsp;ctrl(unsigned&nbsp;char&nbsp;command)<br />{<br />&nbsp;&nbsp;unsigned&nbsp;int&nbsp;k;<br />&nbsp;&nbsp;//AT91F_PIO_ClearOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;0x7F800000)&nbsp;;&nbsp;<br />&nbsp;&nbsp;RWCheck();&nbsp;<br />&nbsp;&nbsp;k=&nbsp;command&lt&lt23;//完成移位的操作<br />&nbsp;&nbsp;AT91F_PIO_SetOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;CD&nbsp;)&nbsp;;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;wait&nbsp;();<br />&nbsp;&nbsp;AT91F_PIO_ClearOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;WD)&nbsp;;&nbsp;wait&nbsp;();<br />&nbsp;&nbsp;AT91F_PIO_SetOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;k&nbsp;)&nbsp;;&nbsp;wait&nbsp;();&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;AT91F_PIO_SetOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;WD&nbsp;)&nbsp;;&nbsp;wait&nbsp;();<br />}<br />/*&nbsp;&nbsp;&nbsp;&nbsp;写数据&nbsp;&nbsp;&nbsp;&nbsp;*/<br />void&nbsp;write(unsigned&nbsp;char&nbsp;dat&nbsp;)&nbsp;<br />{&nbsp;&nbsp;&nbsp;unsigned&nbsp;int&nbsp;k;<br />&nbsp;&nbsp;RWCheck();<br />&nbsp;&nbsp;k=&nbsp;dat&lt&lt23;//完成移位的操作<br />&nbsp;&nbsp;AT91F_PIO_ClearOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;CD&nbsp;)&nbsp;;&nbsp;&nbsp;&nbsp;&nbsp;wait&nbsp;();&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;AT91F_PIO_ClearOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;WD)&nbsp;;&nbsp;wait&nbsp;();<br />&nbsp;&nbsp;AT91F_PIO_SetOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;k&nbsp;)&nbsp;;&nbsp;&nbsp;wait&nbsp;();<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;AT91F_PIO_SetOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;WD&nbsp;)&nbsp;;&nbsp;wait&nbsp;();<br />&nbsp;&nbsp;AT91F_PIO_SetOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;CD&nbsp;)&nbsp;;&nbsp;wait&nbsp;();<br />}<br />/*&nbsp;&nbsp;&nbsp;&nbsp;自动写&nbsp;&nbsp;&nbsp;&nbsp;*/<br />void&nbsp;autowrite(unsigned&nbsp;char&nbsp;dat)<br />{&nbsp;&nbsp;&nbsp;unsigned&nbsp;int&nbsp;k;<br />&nbsp;&nbsp;AutoWCheck();<br />&nbsp;&nbsp;k=&nbsp;dat&lt&lt23;//完成移位的操作<br />&nbsp;&nbsp;AT91F_PIO_ClearOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;CD&nbsp;)&nbsp;;&nbsp;&nbsp;&nbsp;wait&nbsp;();&nbsp;&nbsp;&nbsp;&nbsp;<br />&nbsp;&nbsp;AT91F_PIO_ClearOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;WD)&nbsp;;&nbsp;wait&nbsp;();<br />&nbsp;&nbsp;AT91F_PIO_SetOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;k&nbsp;)&nbsp;;&nbsp;&nbsp;wait&nbsp;();<br />&nbsp;&nbsp;<br />&nbsp;&nbsp;AT91F_PIO_SetOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;WD&nbsp;)&nbsp;;&nbsp;wait&nbsp;();<br />&nbsp;&nbsp;AT91F_PIO_SetOutput(&nbsp;AT91C_BASE_PIOA,&nbsp;CD&nbsp;)&nbsp;;&nbsp;wait&nbsp;();<br />}<br />
您需要登录后才可以回帖 登录 | 注册

本版积分规则

10

主题

25

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部