5iMX宗旨:分享遥控模型兴趣爱好

5iMX.com 我爱模型 玩家论坛 ——专业遥控模型和无人机玩家论坛(玩模型就上我爱模型,创始于2003年)
查看: 2183|回复: 7
打印 上一主题 下一主题

有刷双向电调,有代码pic509

[复制链接]
跳转到指定楼层
楼主
发表于 2006-12-4 11:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
给大家参考


;--------------------------------------------------------------
; 係俵俫倸 僶僢僋晅偒僗僺乕僪僐儞僩儘乕儔乕
;  俁亅係僙儖梡偺僴僀僒僀僩懁俀俽俰俥俤俿
;           儘乕僒僀僩俀俽俲捈愙嬱摦
; 侾俀俠俆侽俋 Copyright (c) 1999 by M.Iijima
;   
;              丂丂丂丂丂丂僾儘僌儔儉惂嶌丂斞搰姴梇
;丂丂俋俋乛侾侽乛俀侽
;                       _______  _______
;                      |       倁       |
;    3-5.5V+     Vdd --+ 1            8 +-- Vss   0V
;                      |                |
; 慜恑俶    GP5/OSC1 --+ 2 <<      << 7 +-- GP0--屻恑俶
;                      |                |
; 屻恑俹    GP4/OSC2 --+ 3 <<      << 6 +-- GP1--慜恑俹+踢俦?
;                      |                |
; 僶僢僥儕乕僗僀僢僠 --+ 4 >>      << 5 +-- GP2--庴怣僷儖僗擖椡
;                      |                |
;                      +----------------+
;
;
; 僯儏僂帪丂GP0=0 GP1=1 GP4=1 GP5=0
; 剔诎?帪丂GP0=1 GP1=1 GP4=1 GP5=1
; 慜恑偺帪丂GP0=0 GP1=0 GP4=1 GP5=1 亄僷儖僗俹倂俵怣崋弌椡
; 屻恑偺帪丂GP0=1 GP1=1 GP4=0 GP5=0 亄僷儖僗俹倂俵怣崋弌椡
;
; 拲堄丒庴怣怣崋偑嶌摦拞偵憲怣婡偺揹尮傪愗偭偨応崌偵俹俹俵偺応崌
; 応崌偵傛偭偰偼丄慡奐嶌摦偡傞応崌偑偁傝傑偡丅
; 俹俠俵偺応崌偼栤戣側偟丅
;僽儗乕僉巇條偼丄媡婲揹椡偵傛傝俹俬俠偑堎忢嶌摦偡傞偺偱暿揹尮巇條偱巊梡
;
;--------------------------------------------------------------
  include 12c5xx.h
  .12c509

  .osc intrc
  .pwrt on
  .mclre disable  ;僷儚乕俷俶儕僙僢僩
  .wdt off
  .protect off

  org 0ch
wk2  ds 1 ;墘嶼梡偵巊偆
wk  ds 1
hids  ds 1 ;怣崋偺嵟挿僨乕僞偺僔僗僥儉
lods  ds 1 ;怣崋偺嵟抁僨乕僞偺僔僗僥儉
hidc  ds 1 ;俥俤俿俷俶梡偺僇僂儞僞乕
lodc  ds 1 ;慜恑懁婎弨僇僂儞僞乕
lodcc  ds 1 ;僶僢僋懁婎弨僇僂儞僞乕
pam  ds 1 ;僷儖僗偺儅僗僞乕僨乕僞
pay  ds 1 ;僷儖僗偺儅僗僞乕梊旛僨乕僞
tm1  ds 1
tm2  ds 1
tm3  ds 1
cn  ds 1
cn2  ds 1
fetxx  ds 1
fetxo  ds 1
fetox  ds 1
fetoo  ds 1
femxx  ds 1
femxo  ds 1
femox  ds 1
femoo  ds 1
bep0  ds 1
bep1  ds 1
bept  ds 1
  org 0
  goto start
;
;---------奐巒僾儘僌儔儉-----------------------
;
start  movlw 001100b  ;001100b
; 僯儏僂帪丂GP0=0 GP1=1 GP4=1 GP5=0
  tris gpio
  bcf gpio,0  ;俥俤俿慡偰俷俥俥
  bsf gpio,1  ;gp1=1,4=1
  bsf gpio,4  ;俥俤俿慡偰俷俥俥
  bcf gpio,5  ;gp0=0,5=0
machi  btfss gpio,3  ;揹尮僆儞偐
  goto machi  ;
  clr hids
  clr lods
  clr hidc
  clr lodc
  clr pam
  clr pay
  nop
  call waits  ;埨掕偡傞傑偱懸偪
  nop
  call beep
  nop
  call waits
  nop
  call beep
;---------憲怣婡偺怣崋懸偪-------------------
shoki     ;俙億乕僩偐傜僨乕僞擖椡
  btfsc gpio,2  ;僷儖僗俫俬偼栠傞
  goto shoki  ;
shokid  nop   ;俙億乕僩偐傜僨乕僞擖椡
  btfss gpio,2  ;僷儖僗倢倧偼栠傞
  goto shokid  ;
;--------怣崋偺婎弨僇僂儞僩傪愝掕俴俷懁---------
  clr pam
  goto kass  ;僇僂儞僩儖乕僠儞傊
kabb  nop   ;
  mov lodc,pam ;儘乕僨乕僞傪搊榐
  mov pay,pam  ;僇僂儞僞乕偵傕搊榐
  cjb lodc,#85,boo
  goto bxx  ;僶僢僋柍愝掕傊
;---------------僽儗乕僉桳傝愝掕儖乕僠儞--------
boo  add lodc,#8  ;僯儏乕僩儔儖僇僂儞僩亄
  mov lodcc,lodc ;lodcc=lodc
  sub lodcc,#4 ;媡揮懁偺曗惓
  mov femxx,#1 ;僽儗乕僉側偟愝掕
  goto main
;---------------僽儗乕僉柍偟愝掕儖乕僠儞----
bxx  call beep
  call wait
  clr pam  ;婎弨傪侽偵
bshoki     ;俙億乕僩偐傜僨乕僞擖椡
  btfsc gpio,2  ;僷儖僗俫俬偼栠傞
  goto bshoki  ;
bshoki1     ;俙億乕僩偐傜僨乕僞擖椡
  btfss gpio,2  ;僷儖僗倢倧偼栠傞
  goto bshoki1  ;
;--------怣崋偺婎弨僇僂儞僩傪愝掕俴俷懁---------
  clr pam
  goto kas2  ;僇僂儞僩儖乕僠儞傊
kab2  nop   ;
  mov lodc,pam ;儘乕僨乕僞傪搊榐
  mov pay,pam  ;僇僂儞僞乕偵傕搊榐
  cjb lodc,#90,bxxm
  goto bxx  ;僽儗乕僉柍偟傊
bxxm
  add lodc,#8  ;僯儏乕僩儔儖亄係僇僂儞僩
  mov lodcc,lodc ;lodcc=lodc
  sub lodcc,#4 ;媡揮懁偺曗惓
  mov femxx,#0 ;僽儗乕僉桳傝愝掕
  call beep
  call waits
  call beep
  call waits
  call beep
  goto main
;-------僇僂儞僩僒僽----------------------------
kass  inc pam     ;儅僗僞乕偵僷儖僗傪亄侾偡傞
  mov cn,#4    ;係僇僂儞僩
lopcu  nop   ;
  djnz cn,lopcu ;
  btfsc gpio,2
  goto kass
  goto kabb
;-------僇僂儞僩僒僽LO--------------------------
kas2  inc pam     ;儅僗僞乕偵僷儖僗傪亄侾偡傞
  mov cn,#4   ;係僇僂儞僩
lopaa  nop   ;
  djnz cn,lopaa ;
  btfsc gpio,2
  goto kas2
  goto kab2
;-------俛俤俤俹壒僒僽儖乕僠儞---------------------
beep  mov cn2,#70  ;價乕乕僾壒
loop0  bcf gpio,0
    bcf gpio,1  ;001偺俥俤俿怣崋
    bsf gpio,4  ;001偺俥俤俿怣崋
    bsf gpio,5  ;001偺俥俤俿怣崋
  mov cn,#10  ;俷俶僇僂儞僩
loop2  nop   ;
  djnz cn,loop2 ;
  bsf gpio,1
  mov cn,#200   ;俷俥俥僇僂儞僩
loop3  nop   ;
  djnz cn,loop3 ;
  djnz cn2,loop0
    bsf gpio,1  ;001偺俥俤俿怣崋
    bcf gpio,5  ;001偺俥俤俿怣崋
  retlw 3
;------------僞僀儅乕儖乕僠儞---------------------------
wait
  mov tm1,#3  ;儘儞僌僞僀儅乕
wait2  clr tm3
wait0  clr tm2
wait1  nop
  djnz tm2,wait1
  djnz tm3,wait0
  djnz tm1,wait2
  retlw 3
;--------------------------------------------------------
waits
  mov tm1,#1  ;僔儑僂僩僞僀儅乕
waits2  clr tm3
waits0  clr tm2
waits1  nop
  djnz tm2,waits1
  djnz tm3,waits0
  djnz tm1,waits2
  retlw 3
;--------------儊僀儞僾儘僌儔儉---------------------------
main  btfss gpio,3  ;揹尮俷俥俥僠僃僢僋
  goto bwait    ;僶僢僥儕乕庢傝奜偟杊巭傊
  movf lodc,w  ;僇僂儞僩傪倂儗僕僗僞乕傊
  subwf pay,w   ;僇僂儞僩偐傜儘乕僨乕僞堷偔
  mov hids,w  ;怣崋曄壔検傪搊榐
  mov lods,#16 ;婎弨俫俬僇僂儞僩
  csa hids,lods
  goto mainxx
  mov lods,hids
mainxx  movf hids,w  ;俷俥俥僇僂儞僩悢搊榐
  subwf lods,w
  mov lods,w
  cjae hids,#190,xbmain2 ;僶僢僋嶌摦椞堟傊
;--------------俥俤俿怣崋偺俫俬晹-----儌乕僞乕夞揮晹----------------
main2
  call countp  ;庴怣怣崋張棟
  csa hids,#1
  goto main3
; 僯儏僂帪丂GP0=0 GP1=1 GP4=1 GP5=0
; 剔诎?帪丂GP0=1 GP1=1 GP4=1 GP5=1
; 慜恑偺帪丂GP0=0 GP1=0 GP4=1 GP5=1 亄僷儖僗俹倂俵怣崋弌椡
; 屻恑偺帪丂GP0=1 GP1=1 GP4=0 GP5=0 亄僷儖僗俹倂俵怣崋弌椡
;  bcf gpio,0  ;儌乕僞乕俷俶
;  bsf gpio,4  ;
    bcf gpio,1  ;
  bsf gpio,5  ;僶僢僋俷俥俥
  dec hids     ;僇僂儞僞乕偐傜侾堷偔
  goto  main2
;--------------俥俤俿怣崋偺俴俷晹--------------------------
main3
  call countp  ;庴怣怣崋張棟
       csa lods,#1  ;
  goto main   ;
;   bcf gpio,0  ;儌乕僞乕俷俶
;  bsf gpio,4  ;
    bsf gpio,1  ;
  bcf gpio,5  ;僶僢僋俷俥俥
  dec lods     ;僇僂儞僞乕偐傜侾堷偔
  goto  main3
;--------------僶僢僋惂屼---------------------------------
xbmain2  
;  cje femxx,#0,xmain2 ;僯儏乕僩儔儖僒僽傊
;-----------------------------------------------------------
  movf pay,w  ;僇僂儞僩傪倂儗僕僗僞乕傊
  subwf lodcc,w   ;婎弨僇僂儞僩偐傜堷偔
  mov hids,w  ;怣崋曄壔検傪搊榐
  mov lods,#22 ;婎弨俫俬僇僂儞僩
  csa hids,lods
  goto maincc
  mov lods,hids
maincc  movf hids,w  ;俷俥俥僇僂儞僩悢搊榐
  subwf lods,w
  mov lods,w
;--------------僯儏乕僩儔儖偺応崌僶僢僋柍偟傊亅亅亅亅亅亅
  cjb hids,#9,xmain2 ;僯儏乕僩儔儖椞堟傊
  sub hids,#8  ;媡揮僇僂儞僩傪峑惓
  cjae hids,#190,xmain2 ;僯儏乕僩儔儖嶌摦椞堟傊
;-------------------------------------------------------
bmain2  call countp  ;庴怣怣崋張棟
  csa hids,#1
  goto bmain3
; 僯儏僂帪丂GP0=0 GP1=1 GP4=1 GP5=0
; 剔诎?帪丂GP0=1 GP1=1 GP4=1 GP5=1
; 慜恑偺帪丂GP0=0 GP1=0 GP4=1 GP5=1 亄僷儖僗俹倂俵怣崋弌椡
; 屻恑偺帪丂GP0=1 GP1=1 GP4=0 GP5=0 亄僷儖僗俹倂俵怣崋弌椡
;   bsf gpio,1  ;
;  bcf gpio,5  ;僶僢僋俷俶
    bsf gpio,0  ;
  bcf gpio,4  ;僶僢僋俷俶
  dec hids     ;僇僂儞僞乕偐傜侾堷偔
  goto  bmain2
;--------------俛桳傝晹--------------------------
bmain3
  call countp  ;庴怣怣崋張棟
       csa lods,#1  ;
  goto main   ;
;   bsf gpio,1  ;
;  bcf gpio,5  ;僶僢僋俷俶
    bcf gpio,0  ;
  bsf gpio,4  ;僶僢僋俷俶
  dec lods     ;僇僂儞僞乕偐傜侾堷偔
  goto  bmain3
;----------------on-------------------------------------
countp  btfsc gpio,2
  goto coup  ;僷儖僗偁傝
  cjbe pam,#0,aaaa
  mov pay,pam  ;梊旛僨乕僞傊搊榐
  clr pam  ;幚應僼傽僀儖傪侽偵
aaaa  retlw 3
coup  inc pam     ;僷儖僗亄侾
  goto aaaa
;--------------僯儏乕僩儔儖僒僽晹-----------------------
xmain2  cje femxx,#0,xmain22 ;僯儏乕僩儔儖僒僽傊
xnain2
  call countp  ;庴怣怣崋張棟
  csa hids,#1
  goto xnain3
; 僯儏僂帪丂GP0=0 GP1=1 GP4=1 GP5=0
; 剔诎?帪丂GP0=1 GP1=1 GP4=1 GP5=1
; 慜恑偺帪丂GP0=0 GP1=0 GP4=1 GP5=1 亄僷儖僗俹倂俵怣崋弌椡
; 屻恑偺帪丂GP0=1 GP1=1 GP4=0 GP5=0 亄僷儖僗俹倂俵怣崋弌椡
    bcf gpio,0
;  bsf gpio,1
;   bsf gpio,4

欢迎继续阅读楼主其他信息

主题

  • 没有相关信息
  • 没有相关信息
  • 没有相关信息
沙发
发表于 2006-12-4 18:22 | 只看该作者
需要什么文看啊?为什么我看到的英文后面是不认识的字?乱码?
3
发表于 2006-12-4 21:33 | 只看该作者
:em24:
4
发表于 2006-12-5 00:39 | 只看该作者
对呀!!!看不懂也...........晕晕的................
5
发表于 2006-12-5 12:54 | 只看该作者
不错!好资料,就是文字不懂!!
6
 楼主| 发表于 2006-12-5 14:48 | 只看该作者

回复 #5 twer 的帖子

那是日文转换后的结果,都是注释,不影响代码.
7
发表于 2007-1-28 00:13 | 只看该作者
:em24: :em26:
8
发表于 2007-1-28 10:06 | 只看该作者
原帖由 kmwjs 于 2006-12-4 11:44 发表
给大家参考


;--------------------------------------------------------------
; 係俵俫倸 僶僢僋晅偒僗僺乕僪僐儞僩儘乕儔乕
;  俁亅係僙儖梡偺僴僀 ...


此电路可能有问题,当电压大于5V时,由于PIC12C509第6脚电位比2SJ471的电位低,可能会引起2SJ471不能关断.
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

关闭

【站内推荐】上一条 /1 下一条

快速回复 返回顶部 返回列表