首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

cpld外部晶振的疑问

cpld外部晶振的疑问

如果cpld输入的时钟不是一个标准的脉冲


即每个周期都是一样的,但每一个周期内,高电平比低电平长


这样的时钟输入,会不会影响cpld的计数处理?

如:

always@(posedge clk)

begin

y=y+1;

if(y==8'b11111)

f=~f;

end

 


 

[此贴子已经被作者于2006-7-25 16:06:57编辑过]

╔☆→────────────────←☆╗
┊寻觅在电子中, , , 寻求适合自己的一席┊┊┊┊
┊也许生活本忙碌,  想享受安逸只能是心态了吧┊
╚☆→────────────────←☆╝      &
就是占空比不是50%的意思把,不会影响的。
顺便说一句,你的程序有点问题,边缘触发的always块里面最好用非阻塞赋值。
posedge 这个关键字的意思就是使用上升沿,所以他和你高电平持续时间没有关系,周期对了就可以了
美梦成真-->噩梦降临!
多谢指点
然而实际中得出来的结果好像不一样
之前用很准确的时钟,就如bemoon所说占空比50%,程序计数后得出脉冲很准确
然后换上别的时钟,由于电容可能选择不对,占空比没有50%,每个周期应该是对的
但程序计数后得出脉冲就不准确了,得出的脉冲与计算的值相差10倍!!

顺便请问:32.768k的晶振,,电容值怎样选取?

to bemoon:always块最好用非阻塞赋值,是不是说阻塞的话
信号不是同时处理,可能会出现不想的结果?
╔☆→────────────────←☆╗
┊寻觅在电子中, , , 寻求适合自己的一席┊┊┊┊
┊也许生活本忙碌,  想享受安逸只能是心态了吧┊
╚☆→────────────────←☆╝      &
lz说的32.768应该是一个晶体,而不是一个晶振,电容值不同,得到的结果会有微小的偏差,但是不会有10倍这样的误差,lz最好实测一下;
阻塞和不阻塞都可以用,但是要注意到他们的区别:阻塞是一条语句完成赋值就会生效,非阻塞是等语句都执行完,赋值才会同时生效;
美梦成真-->噩梦降临!
晶体振荡器不就是晶振么?
我试过33p、103、104的电容
所产生出来的脉冲,相差可大了
33p的看不了,103是30us的脉冲,而104出来的是20ms
而且都是占空比不对称的

究竟用多大才对呢?

阻塞与非阻塞的定义明白,但具体用起来的区别究竟是什么呢?
╔☆→────────────────←☆╗
┊寻觅在电子中, , , 寻求适合自己的一席┊┊┊┊
┊也许生活本忙碌,  想享受安逸只能是心态了吧┊
╚☆→────────────────←☆╝      &
这么麻烦不如干脆用有源晶振好了。
晶体振荡器是晶振,可以不用任何外围电路,只要加电就可以输出时钟,而警惕必须要用外围电路(电容)来起振;
同意楼上的,干脆用晶振,也不贵,很好买,用起来也简单
美梦成真-->噩梦降临!
返回列表