您现在所在的是:

单片机论坛

回帖:10个,阅读:2582 [上一页] [1] [2] [下一页]
977
redmanjack
文章数:31
年度积分:50
历史总积分:977
注册时间:2004/7/8
发站内信
发表于:2005/3/16 9:54:00
#0楼
附件

用keil的c语言怎么编这样的脉冲。
要求:
输出口用P1.0好了
只要写点关键的语句就可以了
用延时或者计数器都可以,最好两种都写给偶看看!
16274
machelec 版主
文章数:7023
年度积分:-48
历史总积分:16274
注册时间:2003/12/11
发站内信
发表于:2005/3/16 15:31:00
#1楼
时间太短了.
P1.0是哪个端口上的?
卍卐卍卐卍卐卍卐卍卐卍卐卍卐卍卐卍卐卍卐卍卐卍卐卍卐卍卐卍卐卍卐卍卐
谓正途,崎岖当先
977
redmanjack
文章数:31
年度积分:50
历史总积分:977
注册时间:2004/7/8
发站内信
发表于:2005/3/17 9:47:00
#2楼
时间只是打个比方,换成毫秒也行呀!
请指教
923
shinylulu
文章数:10
年度积分:50
历史总积分:923
注册时间:2005/3/20
发站内信
发表于:2005/3/20 12:14:00
#3楼
我觉得换成毫秒倒是不难,我现在就正在编这个程序
我现在的问题就是想要最短只有10us的脉冲,不知道哪位大峡给下指导
我一开始用的12m的晶振,后来换成27m,但是最短定时也就是75us,用的中断方法
977
redmanjack
文章数:31
年度积分:50
历史总积分:977
注册时间:2004/7/8
发站内信
发表于:2005/3/21 15:02:00
#4楼
用12m的晶振吧
这其实是一个简单的电机启动脉冲,可是用c语言就编不来了!高手指教下!
923
shinylulu
文章数:10
年度积分:50
历史总积分:923
注册时间:2005/3/20
发站内信
发表于:2005/3/21 21:57:00
#5楼
你能发张比较清楚的图吗?我看不清楚你具体要求的脉冲时间
2459
sgx
文章数:474
年度积分:50
历史总积分:2459
注册时间:2001/11/22
发站内信
发表于:2005/3/22 9:50:00
#6楼
你可以加高晶振的频率。
如果用中断的话精度可能达不到要求,延时就好处理多了,如用12m的晶振,一个NOP指令耗时1us.在C中可用_nop_()代替。
要用C的延时的话你也可以这样写。
void delay1(unsigned char i)
{
   while(--i);
}
i=1 s=5us
i=2 s=7us
i=3 s=9us
骐骥一跃,不能十步;
驽马十驾,功在不舍
977
redmanjack
文章数:31
年度积分:50
历史总积分:977
注册时间:2004/7/8
发站内信
发表于:2005/3/30 14:47:00
#7楼
以下是引用sgx在2005-3-22 9:50:00的发言:
如用12m的晶振,一个NOP指令耗时1us.在C中可用_nop_()代替。
要用C的延时的话你也可以这样写。
void delay1(unsigned char i)
{
    while(--i);
}
i=1 s=5us
i=2 s=7us
i=3 s=9us
真的不知道呢,汗~~~感谢!
是不是如果延时5us的话
用_nop_()
  _nop_()
  _nop_()
  _nop_()
  _nop_()
表情表情
1046
zxj005
文章数:44
年度积分:50
历史总积分:1046
注册时间:2003/12/17
发站内信
发表于:2005/4/1 8:46:00
#8楼
用汇编写好,嵌在C里就行。
EtherCAT总线技术,主站(主控)、从站(IO、伺服驱动、步进驱动)。
985
ads123
文章数:35
年度积分:50
历史总积分:985
注册时间:2005/3/27
发站内信
发表于:2005/4/3 13:39:00
#9楼
以下是引用zxj005在2005-4-1 8:46:00的发言:
用汇编写好,嵌在C里就行。
请指教一下,如何把汇编程序嵌入到C里,如在keil中。

关于我们 | 联系我们 | 广告服务 | 本站动态 | 友情链接 | 法律声明 | 非法和不良信息举报

工控网客服热线:0755-86369299
版权所有 工控网 Copyright©2024 Gkong.com, All Rights Reserved

78.0005