• slider image 442
  • slider image 483
  • slider image 484
  • slider image 485
  • slider image 486
  • slider image 487
:::

論壇索引


Board index » All Posts (jjak)




Re: 請問rs232的interrupt和寫入eeprom間有衝突?
#1
新會員
新會員


謝謝您的回覆
我現在的問題是我不知道compile後的程式是否有把GIE設為1?
以下是我compile後得到的*.lst檔中的寫入eeprom的部分
可否請各位大大們幫我看一下唄
謝謝
.................... void ParaSave()
.................... {
....................
.................... UCHAR Wdata;
....................
.................... char EX_ROM_ADD=0;
*
064B: BSF 03.6
064C: CLRF 26
064D: MOVLW 53
064E: MOVWF 28
064F: MOVLW 61
0650: MOVWF 29
0651: MOVLW 76
0652: MOVWF 2A
0653: MOVLW 69
0654: MOVWF 2B
0655: MOVLW 6E
0656: MOVWF 2C
0657: MOVLW 67
0658: MOVWF 2D
0659: MOVLW 2E
065A: MOVWF 2E
065B: MOVLW 2E
065C: MOVWF 2F
065D: MOVLW 2E
065E: MOVWF 30
065F: CLRF 31
.................... char i,SaveStatus[]="Saving...";
....................
....................
.................... for(i=0;i<=ParaNo;i++)
0660: CLRF 27
0661: BCF 03.6
0662: BSF 03.6
0663: MOVF 27,W
0664: SUBLW 14
0665: BTFSC 03.0
0666: GOTO 669
0667: BCF 03.6
0668: GOTO 6A1
0669: BCF 03.6
.................... {
.................... EX_ROM_ADD=EX_ROM_ADD+(i);
066A: BSF 03.6
066B: MOVF 27,W
066C: ADDWF 26,F
.................... Wdata=Para[i];
066D: MOVLW 28
066E: ADDWF 27,W
066F: MOVWF 04
0670: BCF 03.7
0671: MOVF 00,W
0672: MOVWF 25
.................... write_EEPROM(EX_ROM_ADD+i,Wdata);
0673: MOVF 27,W
0674: ADDWF 26,W
0675: MOVWF 32
0676: MOVWF 0D
0677: CLRF 0F
0678: MOVF 25,W
0679: MOVWF 0C
067A: BSF 03.5
067B: BCF 0C.7
067C: BSF 0C.2
067D: BCF 03.5
067E: BCF 03.6
067F: MOVF 0B,W
0680: MOVWF 77
0681: BCF 0B.7
0682: MOVLW 55
0683: BSF 03.5
0684: BSF 03.6
0685: MOVWF 0D
0686: MOVLW AA
0687: MOVWF 0D
0688: BSF 0C.1
0689: BCF 03.5
068A: BCF 03.6
068B: BSF 03.5
068C: BSF 03.6
068D: BTFSS 0C.1
068E: GOTO 692
068F: BCF 03.5
0690: BCF 03.6
0691: GOTO 68B
0692: BCF 0C.2
0693: MOVF 77,W
0694: BCF 03.5
0695: BCF 03.6
0696: IORWF 0B,F
.................... delay_cycles(6);
0697: NOP
0698: NOP
0699: NOP
069A: NOP
069B: NOP
069C: NOP
....................
.................... }
069D: BSF 03.6
069E: INCF 27,F
069F: BCF 03.6
06A0: GOTO 662
06A1: RETLW 00
.................... }

發表於: 2005/9/20 13:18
頂部


請問我可以在程式執行中開關rs232的interrupt嗎?
#2
新會員
新會員


我是用16F877A的chip,用CCS的C寫的
要讓rs232的interrupt enable
我是用enable_interrupts(int_rda);// enable USART interrupt
enable_interrupts(global);// enable ALL interrupt

在程式中我可以用disable_interrupts(int_rda)讓它disable,
但我再次用enable_interrupts(int_rda)時卻無法再讓它enable,請問這是什麼原因呢?

另外我想問一下enable_interrupts(global);// enable ALL interrupt
這個指令有什麼作用呢?
謝謝

發表於: 2005/9/13 11:00
頂部


請問rs232的interrupt和寫入eeprom間有衝突?
#3
新會員
新會員


我是用16F877A的chip,用CCS的C寫的
用以下是我的rs232的isr
#int_rda
void serial_isr(){
   
char c;
   if((
c=getc())!='r' && len<21)
   {
      
string[len]=c;
      
len=len+1;
   }
   else
   {
      
len=0;
   }
}


若我在主程式中埶行eeprom的寫入指令後
void ParaSave
()
{

  
UCHAR Wdata;

  
char EX_ROM_ADD=32;
  
char i,j,SaveStatus[]="Saving...";

  
LCM_ClearDispaly();
  
LCM_Gotoxy(1,1);
  
LCM_Puts(SaveStatus);

  for(
i=0;i<=ParaNo;i++)
   {
     
EX_ROM_ADD=EX_ROM_ADD+(i);
     
Wdata=Para[i];
     
write_EEPROM(EX_ROM_ADD+i,Wdata);
     
delay_cycles);
   }
}


當埶行完eeprom的寫入後
結果rs232的isr就沒有作用了…
請問這是為什麼呢?
請各位大大們幫忙囉~ 謝謝

發表於: 2005/9/13 10:27
頂部


請問如何用rs232收格式是Data bit=7的資料呢?
#4
新會員
新會員


我是用16F877A的chip,用CCS的C寫的
用以下的指令設定rs232的
#use rs232(baud=9600,parity=N,xmit=PIN_C6,rcv=PIN_C7)
data bits的資料格式是8個bits
但是我需要從外面讀baud rate=9600 bps
data bit=7
parity bit=n (none)
stop bit=1
code=ascii
唯一不一樣的是data bits=7
請問我該如何讀呢?
謝謝

發表於: 2005/8/29 16:49
頂部


請問A/D轉換的問題
#5
新會員
新會員


我用的是16F877A的晶片
可用來當類比輸入的腳有
RA0 RA1 RA2 RA3 RA5 RE0 RE1 RE2
而參考準位可為單晶片的電壓Vdd或RA2、RA3
我想要將一個腳(比如RA5)是以RA2為參考準位
另兩個腳(比如RA0,RA1)是以RA3為參考準位
請問可以這樣設定嗎?
如果可以,該怎麼設定呢?

發表於: 2005/3/16 15:02
頂部


請問輸出腳的問題
#6
新會員
新會員


在C的寫法下,我可以用output_low(PIN_B0)及output_high(PIN_B0)
讓輸出腳位PIN_B0動作
但我要怎麼知道PIN_B0的目前狀態呢? 是high還是low?

發表於: 2005/3/8 13:02
頂部






:::

Microchip連結

https://www.facebook.com/microchiptechnologytaiwan/
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=13
https://mu.microchip.com/page/tmu
http://elearning.microchip.com.tw/modules/tad_link/index.php?cate_sn=1
https://page.microchip.com/APAC-PrefCenters-TW.html
http://www.microchip.com/
http://www.microchip.com/treelink
http://www.microchipdirect.com/
http://www.microchip.com.cn/newcommunity/index.php?m=Video&a=index&id=103
http://www.microchip.com.tw/modules/tad_uploader/index.php?of_cat_sn=2
http://www.microchip.com.tw/Data_CD/eLearning/index.html
http://www.microchip.com.tw/RTC/RTC_DVD/
https://www.microchip.com/development-tools/
https://www.youtube.com/user/MicrochipTechnology
[ more... ]

教育訓練中心

!開發工具購買
辦法說明 [業界客戶] [教育單位]
----------------------------------
!校園樣品申請
辦法說明 [教師資格] [學生資格]
----------------------------------