《匠人手记》推荐网上购书渠道:
EDN网(ednchina)购书入口   >>>
互动出版网(china-pub)购书入口   >>>
当当网(dangdang)购书入口   >>>
淘宝网(taobao)购书入口   >>>
更多购书渠道……   >>> 

设为首页加入收藏联系匠人管理入口21IC首页21IC博客21IC社区侃单片机回复的贴参与的贴

天气预报
百宝日历

百宝专栏

  • 首页 相册 标签
  • 电脑应用(65)
  • 供需信息(22)
  • 写书近况(82)
  • 匠人文集(115)
  • 硬件技术(171)
  • 匠人公告(86)
  • 与非门专栏(545)
  • 匠人笔记(115)
  • 团队撰写(96)
  • 汽车电子(52)
  • 编程技巧(465)
  • 程序宝典(476)
  • 网络酷文(472)
  • 开发工具(19)
  • 资料宝藏(274)
  • 项目管理(11)
  • 藏经宝阁(42)
  • 趣味设计(5)
  • 社区热贴(2)
  • 比尔盖茨熊专栏(0) 
  • 百宝信息

    载入中...

    百宝流量

    (2006-07-01开始)



    匠人手记

    32点打铃器例程(AVR)
    程序匠人 发表于 2005-12-28 22:06:00  阅读全文 | 回复(1) | 引用通告 | 编辑

    ;**** AVR编程说明 ********************************************************************
    ;* 编号:LRDZAVR0100 
    ;* 标题: 32点打铃器例程
    ;* 文件名:timecontr.asm
    ;* 版本: 1.0
    ;* 开始日期: 02.06.13
    ;* 目标MCU: AT90S8515
    ;* 技术支持:  webmaster@lrdz.51.net
    ;* 硬件结构: PA0-5对应6个LED数显管的位 ,PC0-7对应各LED数显管的段 ,PB4-7为键盘。
    ;* 软件描述: 上电后,时钟从00.00.00(时/分/秒)自动走时,在走时状态时 , 按PB4(设定
    ;* 键)超过3秒可循环选择调整时间/工作参数 ,接着按PB5以确定选择的操作 ,进入调整操作后 ,
    ;* 按PB5选择欲调整参数,按PB6(增加键)完成调整参数操作 。按PB7,进入时控运行,PB1亮,
    ;* 再按PB7停止时控运行,回显走时。在定时到时,PB0点亮。
    ;*************************************************************************************

    .device AT90S8515 
    .include "8515def.inc"
    .equ DISBUF     = $0060          ;显示缓冲区起始地址
    .equ TIMEDIS    = $0066          ;时钟时分秒存放单元
    .equ XSDBZ      = $0073          ;小数点位标志
    .equ DISTBL     = $0f00          ;显示字符编码表起始地址
    .equ TIMECTR    = $0010          ;32段时间控制表首址(EEPRON)
    .equ TIMECBZ    = $0080          ;控制时间到标志
    .cseg
    .org $0000
       rjmp RESET
    .org $0007
              rjmp TIM0_OVF 
     
    ;****主程序***************************************************************************

    .def cntms   =r9      
    .def hour    =r10
    .def minute  =r11                 
    .def second  =r12
    .def EEdwr   =r16
    .def EEawr   =r17
    .def EEawrh  =r18
    .def EEdrd   =r16  
    .def EEard   =r17  
    .def EEardh  =r18
    .def temp    =r20                 
    .def temp1   =r21
    .def temp2   =r22
    .def temp3   =r23
    .def temp4   =r24
    .def TIM0INT =r19
                
    .org $0020
    RESET:     ldi temp,low(ramend) ;设置堆栈指针
        out spl,temp
        ldi temp,high(ramend)
        out sph,temp
               ldi temp,0b11111111  ;设置各口线输入输出状态
               out ddra,temp
               ldi temp,0b00000011
               out ddrb,temp
               ldi temp,0b11111111
               out ddrc,temp
               ldi zl,TIMECBZ
               clr zh
               clr temp
               st y,temp        
               clr r9               ;清各工作寄存器
               clr r10
               clr r11
               clr r12
               clr r13
               clr r14
               clr r15
               clr r16
               clr r17
               clr r18
               clr r19
               clr r25
               ldi temp,$5
               out tccr0,temp      ;T0设置ck/1024分频
               ldi temp,256-195
               out tcnt0,temp      ;装T0时间常数
    res1:      ldi temp,$02        ;允许T0中断,并计时
               out timsk,temp
               sei                 ;开中断
    res2:      clr r6
               clr r7                         
               sbi PORTb,1
               sbi PORTB,0
    res3:      ldi temp,$af
    res4:      rcall colodis       ;时钟走时显示
               dec temp
               brne res4         
               sbis pinb,7         ;键扫描
               rjmp PB7M          
               sbis pinb,4        
               rjmp BP4M           ;去参数设置          
               rjmp res3

    ;****《系统功能程序》

    .org $0080                       ;定义系统功能程序存放区首址

    ;****32点打铃器工作程序************************************************************************* 

    PB7M:  cbi PORTb,1            ;置运行指示灯亮
           clr r25
           clr r7
    GNCX11:ldi r17,TIMECTR        ;首个控制点EEPRON地址
           clr r18
           lsl r25
           lsl r25
           add r17,r25            ;取得EEPRON中控制点地址(Aj=A0+4*j),A=(r17),j=(r25)
           lsr r25
           lsr r25       
           rcall EERead            
           cpi r16,0       
           breq GNCX12             ;r16=(r17)=0为“ON”
           inc r25
           cpi r25,31
           brmi GNCX11      
           rjmp GNCX16
    GNCX12:inc r17
           rcall EERead
           cp r16,r10
           brne GNCX13
           inc r17
           rcall EERead
           cp r16,r11
           brne GNCX14
           inc r17
           rcall EERead
           mov r7,r16
           inc r7
           cbi PORTb,0
           rjmp GNCX15
    GNCX13:dec r17
           inc r25
           rjmp GNCX11
    GNCX14:dec r17
           dec r17
           inc r25
           rjmp GNCX11   
    GNCX15:cpi TIM0INT,1
           brne GNCX17
           clr TIM0INT
           dec r7       
           brne GNCX17
           clr r7
           sbi PORTb,0
           rjmp GNCX16
    GNCX17:rcall colodis
           sbic pinb,7
           rjmp GNCX15    
           rjmp res2
    GNCX16:ldi temp,$5f
    GNCX18:rcall colodis
           dec temp
           brne GNCX18           
           sbic pinb,7
           rjmp GNCX11    
           rjmp res2
         
    ;****参数设置
     
    BP4M:    ldi temp3,$ff
             ldi temp4,$f
    BP4M1:   nop
             rcall colodis
             sbic pinb,4
             rjmp res1
             dec temp3              ;PB4有按下
             brne BP4M1
             inc temp3
             dec temp4
             brne BP4M1
             ldi temp3,$ff         ;超3秒进入
             ldi temp4,$f        
    BP4M2:   clr yh
             ldi yl,low(DISBUF)    ;设置显示cloc.
             ldi temp,25
             st y+,temp
             st y+,temp
             ldi temp,18
             st y+,temp
             ldi temp,19
             st y+,temp
             ldi temp,20
             st y+,temp
             ldi temp,18
             st y,temp
             ldi zl,low(XSDBZ)
             clr zh
             ldi temp,0b00100000   ;b0-5对应LED自左到右1-6位的小数点,置“1”在该位置小数点。
             st z,temp
             rcall display
             sbis pinb,5
             rjmp cloc              ;进入时间设置        
             dec temp3
             brne BP4M2
             inc temp3
             dec temp4
             brne BP4M2                    
    BP4M3:   ldi temp3,$ff
             ldi temp4,$f
    BP4M4:   clr yh
             ldi yl,low(DISBUF)     ;设置显示labor.
             ldi temp,25
             st y+,temp
             ldi temp,19
             st y+,temp
             ldi temp,10
             st y+,temp
             ldi temp,11
             st y+,temp
             ldi temp,20
             st y+,temp
             ldi temp,22
             st y,temp
             ldi zl,low(XSDBZ)
             clr zh
             ldi temp,0b00100000   ;b0-5对应LED自左到右1-6位的小数点,置“1”在该位置小数点。
             st z,temp
             rcall display
             sbis pinb,5
             rjmp GNCS1             ;进入工作参数设置
             dec temp3
             brne BP4M4
             inc temp3
             dec temp4
             brne BP4M4
             sbic pinb,4
             rjmp BP4M
             rjmp res1
    ;****时钟调整****************************************************************** 
    cloc:    clr temp           
             out timsk,temp      ;不许T0中断          
             cli                 ;关中断
             rcall colodis   
             mov temp,r10
             clr temp4
             ldi temp1,20
             ldi temp3,$80
    cloc3:   ldi yl,low(DISBUF)
             add yl,temp4
             sbic pinb,5              ;选择时分秒
             rjmp cloc4
             dec temp1
             brne cloc4
             ldi temp1,80
             inc temp4
             inc temp4
             add yl,temp4
             cpi yl,$68
             brmi cloc4
             clr temp4
             ldi yl,low(DISBUF)
    cloc4:   nop
             sbic pinb,6              ;调整时分秒值
             rjmp cloc8
             dec temp3
             brne cloc8
             ldi temp3,$20      
    cloc5:   cpi yl,$60
             brne cloc6
             inc r10
             mov temp,r10
             cpi temp,24
             brmi cloc8
             clr temp
             clr r10
    cloc6:   cpi yl,$62
             brne cloc7
             inc r11
             mov temp,r11
             cpi temp,60
             brmi cloc8
             clr temp
             clr r11
    cloc7:   cpi yl,$64
             brne cloc8
             inc r12
             mov temp,r12
             cpi temp,60
             brmi cloc8
             clr temp
             clr r12      
    cloc8:   cpi yl,$60
             brne cloc9
             ldi zl,low(XSDBZ)
             clr zh
             ldi temp,0b00000010       ;b0-5对应LED自左到右1-6位的小数点,置“1”在该位置小数点。
             st z,temp
             mov r16,r10       
             rjmp cloc11
    cloc9:   cpi yl,$62
             brne cloc10
             ldi zl,low(XSDBZ)
             clr zh
             ldi temp,0b00001000       ;b0-5对应LED自左到右1-6位的小数点,置“1”在该位置小数点。
             st z,temp
             mov r16,r11
    cloc10:  cpi yl,$64
             brne cloc11
             ldi zl,low(XSDBZ)
             clr zh
             ldi temp,0b00100000       ;b0-5对应LED自左到右1-6位的小数点,置“1”在该位置小数点。
             st z,temp
             mov r16,r12
    cloc11:  rcall bto      
             st y+,r3
             st y,r4
             rcall display
             sbis pinb,4               ;退出
             rjmp cloc12
             rjmp cloc3
    cloc12:  ldi temp,$02
             out timsk,temp            ;允许T0中断          
             sei                       ;开中断
             rjmp res1
                                  
    ;****32点打铃器工作参数调整********************************************************** 

    GNCS1:   clr r25                ;首个控制点
             clr r22                ;r22为0显示开关页面,为1显示h-xx页面,为2显示m-xx页面,为3显示c-xx页面
             ldi zl,low(XSDBZ)
             clr zh
             ldi r19,0b00000010
             st z,r19
    gncs:    ldi r17,TIMECTR        ;首个控制点EEPRON地址
             clr r18
             ldi yl,low(DISBUF)     ;设置显示缓冲区起始地址
             clr yh
             lsl r25
             lsl r25
             add r17,r25            ;取得EEPRON中控制点地址(Aj=A0+4*j),A=(r17),j=(r25)
             lsr r25
             lsr r25       
             mov r16,r25
             rcall bto
             st y+,r3
             st y+,r4       
             cpi r22,0
             breq kgymxs
             cpi r22,1
             breq hymxs
             cpi r22,2
             breq mymxs
             cpi r22,3
             breq cymxs
             clr r22
             rjmp gncs
    kgymxs:  rcall EERead
             cpi r16,0
             brne offxs
             ldi r23,27           ;显示xx.--on
             st y+,r23
             st y+,r23
             ldi r23,20
             st y+,r23
             ldi r23,26
             st y,r23
             rjmp gzcsxs
    offxs:   ldi r23,27           ;显示xx.-off
             st y+,r23
             ldi r23,20
             st y+,r23
             ldi r23,15
             st y+,r23
             st y,r23
             rjmp gzcsxs           
    hymxs:   ldi r23,28            ;显示xx.h-aa
             st y+,r23
             ldi r23,27
             st y+,r23
             inc r17
             rcall EERead
             rcall bto
             st y+,r3
             st y+,r4
             dec r17
             rjmp gzcsxs
    mymxs:   ldi r23,26            ;显示xx.n-aa
             st y+,r23
             ldi r23,27
             st y+,r23
             inc r17
             inc r17
             rcall EERead
             rcall bto
             st y+,r3
             st y+,r4
             dec r17
             dec r17
             rjmp gzcsxs
    cymxs:   ldi r23,18            ;显示xx.c-aa
             st y+,r23
             ldi r23,27
             st y+,r23
             inc r17
             inc r17
             inc r17
             rcall EERead
             rcall bto
             st y+,r3
             st y+,r4
             dec r17
             dec r17
             dec r17
    gzcsxs:  ldi r23,40
             ldi r24,40
    gzcsxs1: rcall display                
             sbis pinb,5            ;翻页
             rjmp fycz              ;有,去翻页
             sbis pinb,6            ;变值
             rjmp bzcz              ;有,去变值
             sbis pinb,4            ;复位
             rjmp res1              ;有,去复位
             rjmp gncs
            
    fycz:    dec r23
             brne gzcsxs1
             rcall EERead
             cpi r16,0
             brne fycz1
             inc r22
             cpi r22,4
             brmi fycz2
             clr r22
    fycz1:   inc r25
             cpi r25,32
             brmi fycz2
             clr r25
    fycz2:   rjmp gncs               

    bzcz:    dec r24
             brne gzcsxs1
             cpi r22,0
             brne bzcz2       
    bzcz1:   rcall EERead
             cpi r16,0
             breq bzcz11
             clr r16
             rjmp bzcz12
    bzcz11:  ldi r16,1
    bzcz12:  rcall EEWrite
             rjmp gncs
    bzcz2:   add r17,r22
             rcall EERead
             inc r16
             cpi r22,1
             breq bzcz21
             cpi r16,60
             brmi bzcz22
             clr r16
             rjmp bzcz22
    bzcz21:  cpi r16,24
             brmi bzcz22
             clr r16
    bzcz22:  rcall EEWrite
             sub r17,r22
             rjmp gncs

    ;****显示子程序***********************************************************************
    ;*
    ;* 功能:将SRAM显示缓冲区存放的数送数码管显示
    ;* 入口:DISBUF---显示缓冲区起始地址(SRAM)
    ;*       Y--显示缓冲区的指针
    ;*       DISTBL---显示字符编码表起始地址(FLASH)
    ;*       LEDSXW---LED闪显寄存器位设置
    ;*       XSDBZ----小数点设置
    ;* 出口:Y--显示缓冲区的指针,指向高地址
    ;*
    ;****程序段
    display: nop
             push temp
             push temp1
             push temp2
             push temp3
             push temp4
             push r6             
             ldi temp1,6
             ldi temp3,0b11011111  
             ldi yl,low(DISBUF)
             ldi yh,high(DISBUF)
             ldi xl,low(XSDBZ)
             clr xh
             ld r6,x
    disp1:   ld temp,y+       
             ldi zl,low(DISTBL)
             ldi zh,high(DISTBL)
             add zl,temp
             lsl zl
             rol zh
             lpm        
             lsr r6
             brcc disp2
             ldi temp4,0b10000000
             or r0,temp4
    disp2:   out PORTC,r0
             in temp2,PORTA
             ori temp2,0b00111111     
             and temp2,temp3
             out PORTA,temp2
             sec
             ror temp3
             rcall delay
             in temp2,PORTA
             ori temp2,0b00111111
             out PORTA,temp2       ;关显示
             dec temp1
             brne disp1
             pop r6
             pop temp4
             pop temp3
             pop temp2
             pop temp1
             pop temp                             
             ret

    ;****时钟显示子程序*********************************************************************
    colodis:   push temp
               ldi yl,low(DISBUF)     ;设置显示缓冲区起始地址
               clr yh
               ldi xl,low(TIMEDIS)    ;设置时钟时分秒存放单元
               clr xh
               ldi zl,low(XSDBZ)
               clr zh
               ldi temp,0b00001010    ;b0-5对应LED自左到右1-6位的小数点,置“1”在该位置小数点。
               st z,temp
               rcall ram6ram         
               rcall display
               pop temp
               ret 
             
    ;****延时子程序**********************************************************************
     
    delay:  nop          ;延时子程序
            push temp2
            push temp1
      ldi temp2,$ff
    lp1:    ldi temp1,$f
    lp2: dec temp1
     brne lp2
     dec temp2
     brne lp1
            pop temp1
            pop temp2
     ret   ;子程序返回

    ;****写EEPRON子程序*********************************************************************
    ;*
    ;*功能:将EEDWR(r16)内容写入以EEAWR(r18:r17)内容为地址的EEPRON单元内。
    ;*
    ;****程序段 
    EEWrite:sbic EECR,EEWE
            rjmp EEWrite 
            out  EEARH,EEawrh
            out EEARL,EEawr
            out EEDR,EEdwr
            sbi  EECR,EEMWE
            sbi EECR,EEWE
            ret

    ;****读EEPRON子程序*********************************************************************
    ;*
    ;*功能:从以EEARD(r18:r17)内容为地址的EEPRON单元读区内容送EEDRD(r16)寄存器。
    ;*
    ;****程序段 
    EERead: sbic EECR,EEWE 
     rjmp EERead   
     out  EEARH,EEardh 
     out EEARL,EEard 
     sbi EECR,EERE
            sbi EECR,EERE
     in EEdrd,EEDR 
     ret

    ;****6字节SRAM内容传送子程序************************************************************
    ;*
    ;* 功能:将SRAM内连续6字节由BLOCK1传送到BLOCK2
    ;*       x---欲传送6字节起始地址(SRAM)指针
    ;*       y---欲放置6字节起始地址(SRAM)指针
    ;*
    ;****程序段
    ram6ram:push temp1
            push temp2
            ldi temp1,$06      
    ramd1:  ld temp2,x+
            st y+,temp2
            dec temp1
            brne ramd1
            pop temp2
            pop temp1
            ret

    ;****8位二进制数转3位BCD数子程序********************************************************
    ;*
    ;*功能:把一个8位无符号二进制数转换为3位BCD码数。
    ;*入口:r16---内装8位无符号二进制数。
    ;*出口:BCD码放在r2:r3:r4,r2存放百位。
    ;*
    ;****程序段

    bto:      push r16
              clr r2
              clr r3
              clr r4
              rjmp bto2
    bto1:     inc r2
    bto2:     subi r16,100
              brpl bto1
              ldi temp,100
              add r16,temp
              rjmp bto4
    bto3:     inc r3
    bto4:     subi r16,10
              brpl bto3
              ldi temp,10
              add r16,temp
              mov r4,r16
              pop r16
              ret
    ;****时钟0中断服务程序******************************************************

    .org $0bf0
    TIM0_OVF:  push temp          
               ldi temp,256-195
               out tcnt0,temp      ;重装T0时间常数
               inc cntms
               mov temp,cntms
               cpi temp,40
               brne timecunt
               clr cntms          
               inc second
               mov temp,second
               cpi temp,60
               brne timecunt
               clr second
               ldi TIM0INT,1
               inc minute 
               mov temp,minute
               cpi temp,60
               brne timecunt
               clr minute
               inc hour
               mov temp,hour
               cpi temp,24
               brne timecunt
               clr hour
    timecunt:  ldi xl, low(TIMEDIS)
               clr xh
               mov r16,hour
               rcall bto          
               st x+,r3
               st x+,r4       
               mov r16,minute
               rcall bto
               st x+,r3
               st x+,r4
               mov r16,second
               rcall bto
               st x+,r3
               st x+,r4
               pop temp          
               reti

    ;****字形表*****************************************************************                
    .cseg
    .org DISTBL
    .dw 0x003f,0x0006,0x005b,0x004f,0x0066,0x006d,0x007d,0x0007,0x007f,0x006f
    .dw 0x0077,0x007c,0x0039,0x005e,0x0079,0x0071,0x0073,0x0076,0x0058,0x0038
    .dw 0x005c,0x0067,0x0050,0x006e,0x0078,0x0000,0x0054,0x0040,0x0074,0x0000

    ;*********************************END***************************************

    看《匠人手记》,与匠人同行!北航出版,正在热卖!

    最后的字形表的dw 0x0007是什么意思
    cat(游客)发表评论于2006-8-26 11:15:00  个人主页 | 引用 | 返回 | 删除 | 回复

    cat(游客)

    L3730  //这里的dw 0x0007是做什么用的.
         CMP.B  #0 , R10
         JZ   L37A6
         CALL #L38AC
         MOV.B  @R14 , R12
         CALL #LCFC0
         JGE   L368C   

         DW 0x0007    

         SUB.B  R6 , R2
         MOV.W  @R4+ , R7
         JGE   L3670    
         SUBC.B  R10 , R9
         MOV.W  @R13+ , R7
         JGE   L35FE    

         CMP.B  0x5437(R14) , R3
         JGE   L3618   

         ADDC.B  0x37(R12) , R8
         CALL #L354C
         CALL #L3B2E
         JMP   L37A6
         CALL #L353A
         CALL #L38CC
         JMP   L37A6
         CALL #L3524
         MOV.W  0x200(R15) , R12
         CALL #L605E
         JMP   L37A6
         MOV.B  R10 , R14
         CALL #L352E
         CALL #L4F88
         JMP   L37A6
         CALL #L3524
         MOV.W  0x200(R15) , R12
         CALL #L6A0E
         JMP   L37A6
         CALL #L353A
         CALL #L8726
         JMP   L37A6
         CALL #L354C
         CALL #LA196

    看《匠人手记》,与匠人同行!北航出版,正在热卖!

    发表评论:
    载入中...

    芯片专题

    器件专题

    软件专题

    硬件专题

    综合专题

    项目专题

    原创专题

    器件检测
    LCD LED
    按键 触摸键
    E2PROM
    电池 电机
    电阻 电容 电感

    指令系统
    软件算法
    编程规范
    滤波算法
    串行通讯

    PCB设计
    I2C PWM
    红外遥控
    充电技术
    中断 ADC 

    匠人手记
    匠人夜话
    网络心路
    一周热点串烧
    从零开始玩PIC
    DIY旋转时钟

    广告5号位 [投放]


    学习板、开发板、编程器、下载器、仿真器(查看详情……)

    站内搜索


    站外搜索


    百度  google
    mp3  歌词 
    图片  FLASH 
    知道  文档
    新闻  词典 
    地图  mp3 
    软件  天网 
    雅虎  爱问 
    搜狗  讯雷 
    网讯  华军 
    天空 

    21IC器件搜索
    百宝箱分站
  • 《匠人的百宝箱》21IC站
  • 《匠人的百宝箱》21IC笔记团队
  • 《匠人的百宝箱》MCUBLOG站
  • 《匠人的百宝箱》MCUBLOG笔记团队
  • 《匠人的百宝箱》EDN站
  • 《匠人手记》EDN书友会
  • 《匠人的百宝箱》与非网站
  • 《匠人的百宝箱》新浪站
  • 《匠人的百宝箱》百度站
  • 《匠人的百宝箱》网易126站
  • 《匠人的百宝箱》网易163站
  • 《匠人的百宝箱》互动出版网站
  • 广告4号位 [投放]

     
     
     

    新鲜货色

    匠人手记

    近期动态

    载入中...

      《匠人手记》购书全攻略 
     书友近况:淘书手记答疑与讨论:什么是散转程序 
     《匠人手记》新书艳照
     EDN《匠人手记》签名售书优惠活动开始报名啦!
     欢迎加入《匠人手记》EDN书友会
     欢迎加入《匠人手记》书友会Q群
     《匠人手记》终稿目录
     《匠人手记》封面,请大家先睹为快
     上周六收到了北航寄来的《匠人手记》清样,让大家先睹为快

    匠人原创

    粉丝评论

    往日酷贴

    载入中...

    载入中...



     网络酷文:博客,改变的不仅仅是图书 
     网络酷文:C语言宏定义技巧C语言 条件编译详解

      21IC上海2008-04聚会报名进行中。。。 
     两分钟让你明白什么是ERP![转]
      神奇的Duff's Device 算法
      实用一线通讯电路及软件设计方法
      程序员的“七年之痒”
      史上最短但最精彩的武侠小说
      网络无厘头文学《缺钙水浒》(爆笑)

     你的博客还能持续多久(转贴)
     电动车无刷电机控制器软件设计要点(作者:谢渊斌)

    大千八卦

    友情连接

    新浪新闻:
    新浪财经:
    AK58新闻:
    新浪股票:
    新浪股票:
    证券之星:

     [更多酷站连接]

     

     

    [欢迎交换连接]

    [百宝箱之与非门分舵]

    [电脑圈圈的家当]

    [IC921的博客]

    [柔月阁]

    [八楼的呼吸]

    [hotpower 的水潭]

    [xwj的文君阁]

    [所长的BLOG]

    [阿摆手记]

    [电子伙伴]

    [unaided的笔记]

    [小飞的笔记]

    [单片机开发联盟]

    [网址之家]

    [好东西网址大全]

    [美萍中文精选]

    [数字电视之家]

    [SMARTCODE电子书斋]

    [软件开发之窗]

    [Armoric]

    [我爱研发网]

    [infernal的笔记]

    [雄鹰的空中加油站]

    [SunK]

    [逍遥电子]

    [ningpanda的博客]

    [C-Design]

    [一网见天下]

    [海边淘沙]

    [嵌入式365]

    [水牛的仓库]

    [股剩是怎样炼成的]

    [PIC论坛]

    [ICC AVR开发网]

    [中国高校自动化网]

     

     

     

    MCU博客-中国电子工程师博客网 

    大学生电子网 

     

     

     

     

     

    !!! 《匠人的百宝箱》 !!!