完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我目前的工作对董事会由一位教授在我的大学cy8c29466-24pxi采用单片机设计,该板控制12个电机(8位12系列PWM),有4个LED,2个开关和1液晶显示。
到目前为止,使用¨PWM我在一直线上,但没有控制机器人行走,它开始步行板和电源都在,所以我需要用两个开关来启动和停止运动的机器人,和我们想用每一个动作,但我不知道何W将按钮操作的框图和主要的C代码。 另外,我已经安排led_1和led_2端口分别p1_2和p1_3,但是当我尝试启动他们的主,他们不出现,我开始写“led_1_start();“但是代码助手不显示任何LED连接。 事先感谢任何有帮助的人。 PCATURA1.PNG 104.3 K |
|
相关推荐
11个回答
|
|
欢迎来到论坛!
发布完整的项目总是明智的,这样我们就可以查看所有的设置。要做到这一点,请使用Designer-& Gt;file & gt;存档项目(最小值)并附加生成的.zip文件。鲍勃 |
|
|
|
|
|
|
|
我使用最新的设计师5.4、led_1_start()在代码完成显示(你关掉它吗?)
程序代码看起来有点非结构化,最好使用自己编写的delay()函数代替重复的代码行。更好的是使用一个计时器,因为程序可以做不同的事情直到定时器中断。 当你写一个函数,进行机器人的一个步骤,它会更容易启动和停止它的一个按钮。 鲍勃 |
|
|
|
现在我可以开始编程LeD1和LeD2,这可能是因为我后来没有编译代码,谢谢。
关于延迟,我正在写这些方法: 无效DelaySimple(空){ 对于(i=0;i<=30000;i++){} } 无效DelayLong(空){ 对于(i=0;i<=30000;i++){} 对于(i=0;i<=30000;i++){} 对于(i=0;i<=30000;i++){} } 然后使用它们: PWM8Y4X书写宽度(11); DelaySimple(); PWM8Y5X书写宽度(17); DelaySimple(); PWM8Y7X书写宽度(17); DelaySimple(); 这是我的错误和38个警告,你能告诉我为什么吗?我以前只在Java上编写过代码,而在空方法中没有返回。 FAB21.RAR 611.9 K |
|
|
|
变量i未在函数内声明。
我会写 无效DelayLong(空){ UIT8I; 对于(i=0;i<i++){DelaySimple()} } 这是我最喜欢的C手册的链接 鲍勃 |
|
|
|
鲍伯,当你说:
“当你可以编写一个执行机器人步骤的函数时,用按钮启动和停止它会更容易。” 我怎样才能从Purt1L00和PoTyl 1G1中读取输入,当按钮被按下时,我的教授说在一个微控制器中有一个中断,读取不必在代码本身中,但是我怎样才能读懂那个中断呢?我在想,如果我可以像布尔变量那样使用P1Y0上的状态,那么它可以在IFA的条件下使用, 即。: (1){ 决定; 如果(Poto1O0AdRead()){ //当SW1被按下时读取 决定=1; } 如果(判定==1){ 这里的机器人代码 如果(Posix1x1Ia Read()){ //当SW2被按下时读取 判定==0; LCDY11PRCSTROM(“停止”); } } } 但是在代码完成中没有出现读()命令,什么命令是Simmiar到一个我需要的? |
|
|
|
当你阅读一个像按钮一样的机械开关时
去抖它你可以轮询或使用中断。 这张便条显示了如何读取按钮。这也说明了如何使用。 用于读取修改的影子寄存器写入端口。 HTTP://www. CyPress?COM/?RID=2900 AN2094-PSoC®1 -从GPIO开始 HTTPS://www. Youtub.com /手表?V= TEI6Q5M3C0G影子寄存器 HTTP://www. CyPress?COM/?RID=39497个影子寄存器 链接到去抖动的方法-www. DROPBOX.COM/S/R8VFQEA5FHIUZW1/DEBUNCECE.ZIP PSoC 1的延迟函数 问候,Dana。 |
|
|
|
有两件事你必须解决:电气和程序。
Abutton通常将PIN连接到VDD或GND。引脚必须连接到相反的使用电阻器。这可以通过引脚驱动模式在PSoC内部完成。另外,你应该给PIN一个别名,叫做“StaskButt”。 然后函数StaseButnOnRead()将给您当前输入引脚的电压电平的值,高或Low,true或false。 鲍勃 |
|
|
|
谢谢Dana和鲍伯!
鲍伯,董事会已对开关所需要的电阻,但我不明白,当你说: “然后,功能startbutton_read()会给你一个值的电流输入引脚的电压水平,高、Low、真或假” 我有port_1_2和port_1_3分为按钮和显示停止按钮,但当我编译它,它不在代码完成类似startbutton_read()的主要表现。我做错什么了? Fab22.RAR 694.3 K |
|
|
|
读取端口是这样做的
UIT8 MyPurt1; UIT8 MYPI3; MyPurt1=PRT1DR;//PRT1DR是PORT1的设计器中的宏。 然后使用掩模来提取引脚状态。例如PIN 3的面罩 (在端口中编号为0至7的引脚)=0B90001000=0x08 所以MyPI3=(PRT1DR和0x08); 如果你想要MyPI3只是一个逻辑上的类似的东西 MyPI3=(PRT1DR和0x08)?1:0; 美联社注意之前发布说明。 问候,Dana。 |
|
|
|
……为了便于阅读,多亏了你可以使用的处理器。
定义BitMask(BitNum)(0x01<lt;BitNum)定义读端口(PotoNO,BitNo)((PRTα)PotNO No.dR&位屏蔽(BITNO))?1:0)空主(空){if(RealPoT(0,3))Healle ButoPutsType(); 鲍勃 |
|
|
|
只有小组成员才能发言,加入小组>>
752个成员聚集在这个小组
加入小组2073 浏览 1 评论
1828 浏览 1 评论
3642 浏览 1 评论
请问可以直接使用来自FX2LP固件的端点向主机FIFO写入数据吗?
1764 浏览 6 评论
1515 浏览 1 评论
CY8C4025LQI在程序中调用函数,通过示波器观察SCL引脚波形,无法将pin0.4(SCL)下拉是什么原因导致?
512浏览 2评论
CYUSB3065焊接到USB3.0 TYPE-B口的焊接触点就无法使用是什么原因导致的?
362浏览 2评论
CX3连接Camera修改分辨率之后,播放器无法播出camera的画面怎么解决?
412浏览 2评论
359浏览 2评论
使用stm32+cyw43438 wifi驱动whd,WHD驱动固件加载失败的原因?
864浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-27 08:01 , Processed in 1.228123 second(s), Total 97, Slave 80 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号