文章首页 | 基础入门 | 电路原理图 | 濠殿喖饪撮崹浼存嚋娴兼潙鐐婇柟顖嗗懏婢栨繛鎾寸啲閹凤拷 | PLC闂佺硶鏅炲▍锝夈€侀敓锟�   闂侀潧妫楅敃銈夈€呰瀵ǹ饪伴崘鈺冧粧濠电偛妫庨崹鍝勶耿閹殿喚鍗氭繛鍡樼懅缁€澶愭偣閸ヮ剚鏁遍悗纰夋嫹 Ctrl+D 闂佸綊娼ч鍛叏閳哄懎缁╅柟顖滃椤ユ垿鏌ㄥ☉妤冨妽闁告柨鎳愰幏顐﹀閳ュ厖鎲鹃梺姹囧妼鐎氼參寮鈧獮鎰媴绾版ê浜鹃柨鐕傛嫹婵炴垶鎸撮崑鎾绘偣瑜嶉崲鏌ヮ敆閻斿摜鈻曢柣妯夸含椤忛亶鎮硅閺屽鎹㈠Ο渚桨闁靛鍨崇粈澶愭煟閵忋倖娑ч柣鈩冪懃椤曪綁鍩€椤掑嫬鐭楅柟瀵稿Т缁旂偓绻涢崱鎰伇缂佽顑夐獮鍐€﹂幒鏃傦紲.

电子开发网

电子开发网电子设计 | 电子开发网Rss 2.0 会员中心 会员注册

闂佸疇妫勯幊鎰板极閸濄儲宕夋い鏍ㄨ壘瑜板棛鈧鍠栫换鎴炴櫠濠婂牆绀冪€光偓鐎n剛顦梺鍝勭墐閸嬫捇鏌¢崒娑橆棆濠⒀勵殜婵″瓨绻濋崟顒佹瘎闁诲孩绋掗崝妤呭极閸濄儲宕夋い鏍ㄨ壘瑜板棛鈧鍠栫换妤咁敇閸濄儳涓嶆俊銈傚亾婵炲懏甯℃俊瀵糕偓锝呭缁€澶愭煟椤厾绁烽柣顓㈢畺瀹曟顢楅埀顒傛閿熺姴钃熼柕澶樼厛閸ゅ嫰鏌熼棃娑卞剰闁哥儑鎷� 闂佹椿婢€缁插鎯屾ィ鍐ㄧ妞ゆ巻鍋撶紒鎲嬬磿閹峰鏁嶉崟顓熸瘓闂侀潻绲婚崝濠囧焵椤掍礁濮夐柡浣告憸閳ь剚绋掗崝鎺斿垝閻樺磭鈻旀慨姗嗗亝閻粙鏌涘☉娅亞鎹㈤埀顒€顭跨捄鐑樺濠⒀勭矒瀹曟ḿ浠﹂悜鈺佷壕闁跨噦鎷�
闂佸疇妫勫Λ妤€鐣烽崟顒€绶為柍杞扮贰閸斿懎霉閸忚壈澹樼€规洜鍠栭幃褔宕堕妸锔剧毣闁诲骸婀遍崑妯兼閿燂拷100 c闁荤姴娴傞崣鈧柍浼欐嫹 chm闂佸搫绉堕崢褏妲愰敓鐘参ラ柛灞剧箘閵堫偊鏌¢崒娑氭噧闁哥偛顕埀顒€婀遍、濠囶敋濞戞氨纾奸柛鈽嗗幘缁€澶愭偡閺囩偞顥犳繛鎻掞攻缁楃喓鈧綆浜為幗宥咁熆閼哥數鍟茬紒杈ㄧ箞瀹曟﹢宕ㄩ褍鏅eΔ鐘靛仩閿熴儵鍩€椤掍礁濮夐柡浣告憸閳ь剚绋掗崝鎺斿垝閻樺磭鈻旀慨姗嗗亝閻粙鏌涘☉娅亞鎹㈤埀顒€顭跨捄鐑樺濠⒀勭矒瀹曟ḿ浠﹂悜鈺佷壕闁跨噦鎷�
搜索: 您现在的位置: 电子开发网 >> 电子开发 >> 嵌入式系统 >> ARM >> 正文

S3C2410中的脉宽调制定时器(PWM)

作者:佚名    文章来源:本站原创    点击数:1109    更新时间:2008-11-3

    S3C2410有5个16bit定时器。定时器0-3有脉宽调制功能(Pulse Width Modulation,PWM),定时器4是内部定时器,没有输出引脚。定时器0有Dead-zone发生器,可以保证一对反向信号不会同时改变状态,常用于大电流设备中。
    定时器0-1共用一个8bit prescaler,定时器2-4共用另外一个。每个定时器有一个时钟分频器,可以选择5种分频方法。每个定时器从各自的时钟分频器获取时钟信号。prescaler是可编程的,并依据TCFG0-1寄存器数值对PCLK进行分频。
    当定时器被使能之后,定时器计数缓冲寄存器(TCNTBn)中初始的数值就被加载到递减计数器中。定时器比较缓冲寄存器(TCMPBn)中的初始数值被加载到比较寄存器中,以备与递减计数器数值进行比较。这种双缓冲特点可以让定时器在频率和占空比变化时输出的信号更加稳定。
    每个定时器都有一个各自时钟驱动的16bit递减计数器,当计数器数值为0时,产生一个定时中断,同时TCNTBn中的数值被再次载入递减计数器中再次开始计数。只有关闭定时器才不会重载。TCMPBn的数值用于PWM,当递减计数器的数值和比较寄存器数值一样时,定时器改变输出电平,因此,比较寄存器决定了PWM输出的开启和关闭。
    S3C2410的PWM定时器采用双buffer机制,可以不停止当前定时器的情况下设置下一轮定时操作。定时器值可以写到TCNTBn,而当前定时的计数值可以从TCNTOn获得,即,从TCNTBn获得的不是当前数值而是下一次计数的初始值。
    自动加载功能被打开后,当TCNTn数值递减到0时,芯片自动将TCNTBn的数值拷贝到TCNTn,从而开始下一次循环,若TCNTBn数值为0,则不会有递减操作,定时器停止。
    第一次启动定时器的过程如下:

  1. 初始化TCNTBn和TCMPBn的数值;
  2. 设置定时器的人工加载位,不管是否使用极性转换功能,都将极性转换位打开;
  3. 设置定时器的启动位来启动定时器,同时清除人工加载位。

       若定时器在计数过程中被停止,则TCNTn保持计数值,若需要设置新的数值需要人工加载。定时器的工作过程可以用下图表示。
 

  1. 使能自动加载功能,设置TCNTBn=160,TCMPBn=110,设置人工加载位并配置极性转换位,人工加载位将时TCNTBn、TCMPBn的数值加载到TCNTn、TCMPn。然后,设置TCNTBn、TCMPBn为80和40,作为下一次定时的参数。
  2. 设置启动位,若人工加载位为0,极性转换关闭,自动加载开启,则定时器开始递减计数(计数前有一个设定时间,可以理解为与setup time类似)。
  3. 当TCNTn的数值和TCMPn一致时,TOUTn从低变为高。
  4. 当TCNTn计数至0,定时器产生中断请求,同时TCNTBn、TCMPBn的数值被自动加载到TCNTn、TCMPn,前者为80,后者为40。
  5. 中断服务向量(ISR)将TCNTBn、TCMPBn设置为80和60。
  6. 与3相似。
  7. 与4相似,TCNTn、TCMPn,前者为80,后者为60。
  8. ISR服务程序中,将自动加载和中断请求关闭。
  9. 与6、3相似。
  10. TCNTn为0,TCNTn不会自动加载新的数值,定时器被关闭。
  11. 没有新的中断发生。

    同时,由上面的工作过程可以看出,通过ISR或别的方法写入不同的TCMPBn的数值,就可以调节输出信号的占空比,实现脉宽调制(PWM)。      
     Dead Zone主要用在控制外设的使能,其功能主要是在关闭一个设备和开启另一个设备之间,插入一个时间间隙,以防止两个设备同时改变状态。(有利于减小系统干扰?)
    定时器可以通过TCFG1寄存器的DMA模式位配置为DMA请求源信号(nDMA_REQ)发生器,当定时器被这样配置后,它将nDMA_REQ信号一直置低,直到接收到ACK信号。当定时器收到ACK信号,它将nDMA_REQ信号置高(无效)。当定时器被设置为DMA请求模式时,不会产生中断请求。只能有一个定时器被配置为DMA请求源。


Tags:arm,脉冲调制,定时器  
责任编辑:admin
相关文章列表
没有相关文章
请文明参与讨论,禁止漫骂攻击,不要恶意评论、违禁词语。 昵称:
1分 2分 3分 4分 5分

还可以输入 200 个字
[ 查看全部 ] 网友评论
    没有任何评论
闂佹眹鍨藉ḿ褔鎮哄▎蹇e殨闁逞屽墴瀹曪綁骞嬮悩鐢敌ч梺鎸庣⊕绾板秹鎯囪ぐ鎺撯挅闁糕剝鐟﹂崑鍛存煕濮橆剛澧曢柟顔兼川閻氶箖鎳¢妶鍡樻瘎闁诲孩绋掗崝鏇㈠春濡や焦濯存繝濞惧亾缂佹鐭傞幃鑺ユ媴閸愵亞鍞撮梺鎼炲劚婢ц棄鈻撻幋鐘电>闁瑰濮疯ぐ鏌ユ煥濞戞﹩鍞筶c閻庤鎮堕崕鑼暜閸洖绠柍褜鍓熷鐢告晸閿燂拷,濠碘槅鍨界槐鏇㈠极閹间礁鏋侀柟娈垮枟閺嗏晠鏌i婊冨姤闁伙讣鎷�,闂佸憡顨嗗ú婊勬櫠閺嶎厼瀚夌紒鈥宠唺A缂備焦绋戦ˇ閬嶆偤閹达附鏅ù锝堟閻ゎ噣鏌﹂埀顒勫礃椤忓懏姣勯柣鐘辫閸ㄦ澘霉濡偐纾鹃柟瀵稿Х瑜拌尙绱掗钘夊姢鐎规洘娲熼弫宥囦沪閼规壆顦伴悗瑙勬偠閸庢娊鍩㈤懖鈺傛殰闁割偅绻傞悘锟犳⒑椤愩倕小闁绘粠鍨跺畷鎰箔鐞涒€充壕闁稿本渚楅崑銊╁级閳轰線顎楅柛娅诲啠鏋栭柕濞垮劙缁ㄥ啿菐閸ワ絺鍋撻崘鎻掔稻婵炴潙鍚嬮〃鍛般亹閸ф鏅慨妯块哺閺嗏晠鎮楀☉娆忓缂佽鲸鍨垮畷锝夊箣閻樼數效闂佹寧鍐婚幏锟�
闁荤姍鍐仾闁哄绻濆畷鐘诲川椤掑倻鎲柡澶屽剳閹凤拷
 [闂傚倷绀侀幉锟犮€冮崱妞曞搫饪伴崟顒佺彿闂佸搫绋侀崢鑲┾偓姘槸铻栭柨鏇氱劍绾爼鏌曢崼顐喊闁哄矉绻濆畷鎺楁晜閽樺浼�]闂傚倷绀侀幉锟犲Φ閻愮數鐭嗗〒姘e亾濠碘€崇仛瀵板嫮浠︾粙澶稿濠电偞鍨电壕顓犳閹殿喚纾奸柛娆惷畵鍡欌偓瑙勬穿缁绘繂顕i幘顔藉亹鐎瑰壊鍠楀В鍫ユ⒒娴e憡鎯堥柣妤€妫濋獮鏍敃閿旇棄浠鹃梺鍛婃处閸撴盯鎮疯ぐ鎺撶叆闁绘洖鍊圭€氾拷100 c闂備浇宕垫慨鏉懨归崟顖氱闁跨噦鎷�
 [闂備礁鎼ˇ閬嶅磿閹版澘鍨傛い鏍ㄥ焹閺嬪酣鏌曡箛瀣伄閻忓繒鏁婚弻銊╂偆閸屾稑顏�]婵犵數鍋為崹鍫曞箰閹间絸鍥┾偓鍦О娴滃湱绱掗埀顒勬倻閻娀姊虹拠鎻掝劉闁告劘宕电槐鎾愁潩閸楃偛袣闂佸憡娲﹂崜娑€€呴悜鑺ュ仯闁诡厽甯掓俊浠嬫煕閳轰礁鈧灝顕i崼鏇熷€婚柛鈩冾殘娴犙冣攽閻愬弶锛嶉柡渚囩厺-TR
 [闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋闁诡垰鐭傞幃娆擃敆閸屻倖绁梺鑽ゅУ娴滀粙宕濆澶婃槬闁稿瞼鍋為崑锝吤归敐鍥ㄥ殌缂佲偓閸愨斂浜滈柟鍨鐎氾拷]LM324闂備礁鎼ˇ顐﹀疾濠婂牆绀夐柡宥庡幖濡﹢鏌ㄩ悤鍌涘4~20mA闂備礁鎼ˇ閬嶅磿閹达箑绠柨鐕傛嫹1~5V闂傚倷鐒﹂惇褰掑垂瑜版帗鍊舵慨妯夸含閻牓鏌ㄩ悤鍌涘
 [闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋闁诡垰鐭傞幃娆擃敆閸屻倖绁梺鑽ゅУ娴滀粙宕濆澶婃槬闁稿瞼鍋為崑锝吤归敐鍥ㄥ殌缂佲偓閸愨斂浜滈柟鍨鐎氾拷]LM386婵犵绱曢崑娑橈耿鏉堚晛鍨濇い鏍仦閸婂灚銇勯幒宥囧妽濠殿垱鎸抽弻鐔煎箲閹伴潧娈銈嗘煥閿曨亪寮诲☉婊呯杸闁瑰灝鍟崜璺侯渻閵堝啫鍔滈柟鐟版搐椤曪綁濡搁埡浣虹暰閻熸粌顑嗙粋宥夋晲婢跺鍘遍梺鎸庣箓閸燁偅淇婃總鍛婂仺妞ゆ牓鍊栫€氾拷
 [闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋闁诡垰鐭傞幃娆擃敆閸屻倖绁梺鑽ゅУ娴滀粙宕濆澶婃槬闁稿瞼鍋為崑锝吤归敐鍥ㄥ殌缂佲偓閸愨斂浜滈柟鍨鐎氾拷]936闂傚倷鑳剁划顖滄暜閹烘鏅濋柕鍫濈墑娴滃綊鏌熺紒銏犳灍闁稿鍔岄湁闁挎繂鎳庨弳鐔兼煟閺傛寧鍤囬柡灞剧☉铻i柣鎾冲閻忎線姊虹拠鈥虫灈闁挎洦浜滈悾鐑藉醇閺囩喐娅㈤梺璺ㄥ櫐閹凤拷
 [闂傚倷绀侀幉锟犮€冮崱妞曞搫饪伴崟顒佺彿闂佸搫绋侀崢鑲┾偓姘槸铻栭柨鏇氱劍绾爼鏌曢崼顐喊闁哄矉绻濆畷鎺楁晜閽樺浼�]闂備胶鍎甸崜婵堟暜閹烘绠犻幖娣妽閺咁剟鏌熼柇锕€鍘撮柡瀣墵閺屾洝绠涢妷褏锛熼梺闈涚墛閹告娊骞冭ぐ鎺撳仏閻庢稒锚椤忥拷+濠电姷鏁搁崑鐐哄箰閹绢喖鐤炬繛鎴炲焹閸嬫捇鎯傞崨濠傤伓+闂傚倷鑳堕、濠勭礄娴兼潙纾块柟缁㈠櫘閺佸棝鏌i弬鍨倯闁稿骸绉归弻娑㈠即閵娿儰绨荤紓浣插亾闁跨噦鎷�
 [闂傚倸鍊风欢锟犲磻閸涱収娼╅柕濞炬櫅閺嬩線鏌曢崼婵愭Ч闁稿鍔戝濠氬醇閻旀亽鈧帡鏌熼挊澶屝ч柟顔款潐閹峰懘鎮烽幍顕呮О婵$偑鍊栭幐鎼佸箟閳ョ繀缂氭い蹇撶墱閺佸秵绻涢崱妯哄Е闁稿鎷�]S7-200PLC闂傚倷鐒﹂惇褰掑礉瀹€鈧埀顒佸嚬娴滅偤骞愰幒妤€顫呴柕鍫濇閸撴娊姊虹紒妯烩拹婵″弶甯¢獮蹇涱敃閳锋艾缍婇幃顏堝川椤旂⒈浼� S7_2
 [闂備礁鎼ˇ閬嶅磿閹版澘鍨傛い鏍ㄥ焹閺嬪酣鏌曡箛瀣伄閻忓繒鏁婚弻銊╂偆閸屾稑顏�]S7-200闂備礁婀遍崢褔鎮洪妸鈺佺濠电姵鑹鹃崙鐘绘煕閹般劍娅囨い鈺冨厴閹鎷呴崨濠呯缂備讲鍋撻柛鏇ㄥ灡閻撴洟鐓崶椋庢偧闁告ɑ绮庣槐鎺楀箟鐎n偄顏�,STEP7
 [闂備礁鎼ˇ閬嶅磿閹版澘鍨傛い鏍ㄥ焹閺嬪酣鏌曡箛瀣伄閻忓繒鏁婚弻銊╂偆閸屾稑顏�]ModbusPoll闂傚倷绀侀幉锛勫垝瀹€鍕垫晢闁绘牕鐛沚usSalve闂傚倷鑳舵灙濡ょ姴绻橀獮蹇涙晸閿燂拷
 [闂備礁鎼ˇ閬嶅磿閹版澘鍨傛い鏍ㄥ焹閺嬪酣鏌曡箛瀣伄閻忓繒鏁婚弻銊╂偆閸屾稑顏�]STEP7濠电姷顣藉Σ鍛村垂椤忓牆绀堟繝闈涚墐閸嬫挸顫濋鐘冲櫚闂佸搫鑻惌浣虹不濞戙垹妫橀悹鎭掑妽閳诲苯鈹戦悙宸殶濠殿喕鍗冲畷鎰板即閻樺搫小闂佽法鍣﹂幏锟� Smart_
 [闂備礁鎼ˇ閬嶅磿閹版澘鍨傛い鏍ㄥ焹閺嬪酣鏌曡箛瀣伄閻忓繒鏁婚弻銊╂偆閸屾稑顏�]Modbus闂備浇宕垫慨鎾敄閸涙潙鐤柟鎯板Г閸庡﹥銇勯弽銊х煀闁搞劍绻堥弻娑㈠箻濡も偓閸婅崵鎲撮敓锟� v1.024 缂傚倸鍊搁崐椋庢閵堝绠柨鐕傛嫹
 [闂備礁鎼ˇ閬嶅磿閹版澘鍨傛い鏍ㄥ焹閺嬪酣鏌曡箛瀣伄閻忓繒鏁婚弻銊╂偆閸屾稑顏�]Modscan32闂傚倷绀侀幉锛勫垝瀹€鍕垫晢闁绘牕鐛泂im32,modb
 [闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋闁诡垰鐭傞幃娆擃敆閸屻倖绁梺鑽ゅУ娴滀粙宕濆澶婃槬闁稿瞼鍋為崑锝吤归敐鍥ㄥ殌缂佲偓閸愨斂浜滈柟鍨鐎氾拷]89c51闂傚倷鑳舵灙缂佺粯鍔欒棟闂侇剙绉甸崑鐔哥箾閹存瑥鐏╂俊顐o耿濮婃椽顢曢敐鍥剁伇闂傚倸妫楃紞濠囧蓟閿濆鏁傞柛鈩冾殕閻濄垻绱撴担浠嬪摵闁绘侗妲漮tues
 [闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋闁诡垰鐭傞幃娆擃敆閸屻倖绁梺鑽ゅУ娴滀粙宕濆澶婃槬闁稿瞼鍋為崑锝吤归敐鍥ㄥ殌缂佲偓閸愨斂浜滈柟鍨鐎氾拷]婵犵數鍋為崹鍫曞箰缁嬫5娲Χ婢跺﹦顦版俊銈忕到閸燁偊宕掗妸鈺傜厱闁绘劖娼欒ⅷotues婵犵數鍋涢顓熸叏閹€鏋栭柡鍥╁剳閼板潡鏌ㄥ☉妯侯伀闁活厽鐟╅幃妤呮晲鎼存繄鏁栫紒鐐緲缁夌數鎹㈠┑濠庢Ъ闂佸憡姊归〃濠囧箖閵夆晜鏅搁柨鐕傛嫹
 [闂傚倷鐒﹀鍨熆閳ь剛绱掗幓鎺濈吋闁诡垰鐭傞幃娆擃敆閸屻倖绁梺鑽ゅУ娴滀粙宕濆澶婃槬闁稿瞼鍋為崑锝吤归敐鍥ㄥ殌缂佲偓閸愨斂浜滈柟鍨鐎氾拷]51闂傚倷绀侀幉锟犮€冮崱妞曞搫饪伴崟顒佺彿闂佸搫绋侀崢鑲┾偓姘樀閺屾稑鈹戦崱妤婁患闂佺鍐垮姛缂佽鲸甯為埀顒婄秬閸╂牜鈧熬鎷� protues婵犵數鍋涢顓熸叏閹€鏋栭柡鍥╁剳閼板潡鏌ㄩ悤鍌涘
闂佸搫鐗冮崑鎾绘煛閸屾粌顣奸柡瀣暟缁晠鏁撻敓锟�
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 在线帮助 - 文章列表
返回顶部
刷新页面
下到页底
晶体管查询