|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機 | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
*美化論壇,發(fā)彩色代碼的簡單方法(完整功能版)* |
| 作者:xwj 欄目:單片機 |
呵呵 看了isoar的帖子,一時心血來潮把腳本進行了完整的擴展 所有關(guān)鍵字、注釋、字符串和編譯指令分別用不同顏色顯示 特發(fā)上來讓大家共享 使用方法: 在下面鏈接上點右鍵另存,文件保存成RAR(擴展名),解壓到任意目錄 然后打開UltraEdit,選擇菜單的“宏”--“設(shè)置自動加載宏”,加載解壓的"ABC語法加亮宏.MAC"文件,運行次數(shù)選擇0 (以上只需一次) 以后只要按CTRL+F12鍵把C語言源程序自動轉(zhuǎn)換21IC上的彩色代碼 按CTRL+F11可以把匯編(ASM)語言源程序自動轉(zhuǎn)換21IC上的彩色代碼 ![]() ![]() * - 本貼最后修改時間:2005-6-27 17:35:04 修改者:xwj |
| 2樓: | >>參與討論 |
| 作者: xwj 于 2005/6/22 0:01:00 發(fā)布:
轉(zhuǎn)換效果如下 #include <REG51.H> #define FOSC 12000000ul //11059200ul unsigned CHAR ucUartdata; //串口數(shù)據(jù) bit bUartSign; //收到數(shù)據(jù)標志 void vUartTransmit(unsigned CHAR ucOutput) {//串口發(fā)送函數(shù) ES=0; //Stop Receive interrupt SBUF=ucOutput; while(!TI); TI=0; ES=1; //Restart Receive interrupt } //本程序由xwj設(shè)計的UltraEdit腳本加亮顯示,如需要腳本請聯(lián)系xuwenjun@21cn.com |
|
| 3樓: | >>參與討論 |
| 作者: lrzxc 于 2005/6/22 6:51:00 發(fā)布:
re 呵呵,沒看到壓縮包 |
|
| 4樓: | >>參與討論 |
| 作者: xwj 于 2005/6/22 12:28:00 發(fā)布:
新的壓縮包 * - 本貼最后修改時間:2005-6-26 11:17:41 修改者:xwj |
|
| 5樓: | >>參與討論 |
| 作者: LPC900 于 2005/6/22 12:59:00 發(fā)布:
我從來不用UE 我用的是EmEditor。有人說UE最好了,那我要說EmEditor可以排第二啦。我實現(xiàn)彩色關(guān)鍵字的方法是文本替換,而EmEditor正好提供了有效的手段。 |
|
| 6樓: | >>參與討論 |
| 作者: xwj 于 2005/6/22 14:24:00 發(fā)布:
呵呵,我也喜歡用EmEditor,這個腳本就是按照它的顏色設(shè)置的 匯編的示例: keil中的rand函數(shù)反編譯結(jié)果: /* TEST.c */ #include <stdlib.h> void main(void) { CHAR i, j, k; i = 0x5f; j = rand(); k = 0xf5; } 反編譯結(jié)果,隨機數(shù)放在R7中 ;========================================================================== Q0003: MOV R4,08H ;0003 AC 08 MOV R5,09H ;0005 AD 09 MOV R6,0AH ;0007 AE 0A MOV R7,0BH ;0009 AF 0B MOV R0,#0FH ;000B 78 0F Q000D: MOV A,R7 ;000D EF MOV C,ACC.2 ;000E A2 E2 MOV A,R4 ;0010 EC JB ACC.6,Q0015 ;0011 20 E6 01 CPL C ;0014 B3 Q0015: ANL A,R5 ;0015 5D ANL A,R6 ;0016 5E ANL A,R7 ;0017 5F CPL A ;0018 F4 JNZ Q001F ;0019 70 04 MOV R4,A ;001B FC MOV R5,A ;001C FD MOV R6,A ;001D FE MOV R7,A ;001E FF Q001F: MOV   |
|
| 7樓: | >>參與討論 |
| 作者: 艾森豪威爾 于 2005/6/22 16:07:00 發(fā)布:
TEST void DispIcon(unsigned CHAR *icon_dot,unsigned CHAR dot_num,unsigned CHAR x,unsigned CHAR y) { unsigned CHAR i; unsigned CHAR *p; p=icon_dot; for(i=0;i<dot_num;i++) { SetPos((16*y+i+(16-dot_num)/2), x); WrNonParaCmd(CMD_AUT_WR); { WrDat(*p++); WrDat(*p++); } WrNonParaCmd(CMD_AUTWR_OVR); } } * - 本貼最后修改時間:2005-6-22 16:09:49 修改者:艾森豪威爾 |
|
| 8樓: | >>參與討論 |
| 作者: aoshi 于 2005/6/22 16:11:00 發(fā)布:
好東西,看代碼的時候方便了 |
|
| 9樓: | >>參與討論 |
| 作者: 艾森豪威爾 于 2005/6/22 16:12:00 發(fā)布:
??????????? * - 本貼最后修改時間:2005-6-22 16:13:06 修改者:艾森豪威爾 |
|
| 10樓: | >>參與討論 |
| 作者: 艾森豪威爾 于 2005/6/22 16:17:00 發(fā)布:
hello,xwj,有點問題 我加載完那個宏之后,關(guān)掉Uedit,然后再打開Uedit,出現(xiàn)一個"宏錯誤"提示,怎么回事? |
|
| 11樓: | >>參與討論 |
| 作者: xwj 于 2005/6/22 18:05:00 發(fā)布:
宏錯誤?不會是不同版本不兼容吧?腳本也會有兼容問題嗎? 艾森豪威爾 發(fā)表于 2005-6-22 16:07 侃單片機 ←返回版面 TEST void DispIcon(unsigned CHAR *icon_dot,unsigned CHAR dot_num,unsigned CHAR x,unsigned CHAR y) { unsigned CHAR i; unsigned CHAR *p; p=icon_dot; for(i=0;i<dot_num;i++) { SetPos((16*y+i+(16-dot_num)/2), x); WrNonParaCmd(CMD_AUT_WR); { WrDat(*p++); WrDat(*p++); } WrNonParaCmd(CMD_AUTWR_OVR); } } //本程序由xwj設(shè)計的UltraEdit腳本加亮顯示,如需要腳本請聯(lián)系xuwenjun@21cn.com |
|
| 12樓: | >>參與討論 |
| 作者: Statesman 于 2005/6/22 23:00:00 發(fā)布:
謝謝指點 |
|
| 13樓: | >>參與討論 |
| 作者: 汽車電子 于 2005/6/23 9:09:00 發(fā)布:
好東東 奇怪,怎么看到樓主的貼圖里的C語言全是黑色的??? 我的UE本來就支持關(guān)鍵字顯示不同的顏色,版本是11.00a+ 用來發(fā)到21icbbs上,樓主的東東確實很好用,謝了. * - 本貼最后修改時間:2005-6-23 9:12:51 修改者:汽車電子 |
|
| 14樓: | >>參與討論 |
| 作者: 艾森豪威爾 于 2005/6/23 11:06:00 發(fā)布:
樓主,我的UE是10.0CH版本的 是不是不兼容? |
|
| 15樓: | >>參與討論 |
| 作者: zlei 于 2005/6/23 14:19:00 發(fā)布:
測試一下 #include <avr/io.h> #include <avr/io.h> #include <avr/interrupt.h> #include <inttypes.h> #include <avr/signal.h> #include <avr/pgmspace.h> #include <stdio.h> // MCU AT90S8535 (7.37Mhz) //#define HZ 7372800L // Paterns UART //BUF_SIZE == 2^,115200 bod - 3 #define BUF_SIZE 16 #define MASK (BUF_SIZE-1) #define B115200 3 // Message "Error CRC" == -80 #define ERROR_CRC 175 //Location 1 Wire Net in PORT B pin 0. #define OW_DQ PB0 #define OW_PIN PINB #define OW_DDR DDRB #define OW_PORT PORTB // 1 Wire Commands #define SKIP_ROM 0xCC #define CONVERT_T 0x44 #define READ_SCRATCHPAD 0xBE volatile uint8_t delay_done; volatile uint8_t transmit_buf[BUF_SIZE]; volatile uint8_t transmit_in; //init 0 volatile uint8_t transmit_out; // init 0 /********************************************************************************************* * Function NAME : OW_ComputeCRC8 * * Purpose :Compute the CRC8 VALUE of a data set. * This function will compute the CRC8 or doW-CRC of indata using seed * as inital VALUE for the CRC. * * Parameters: indata One byte of data to compute CRC from. * * seed The starting VALUE of the CRC. * * return: The CRC8 of indata with seed as initial VALUE. * * Note: Setting seed to 0 computes the crc8 of the indata. * constantly passing the return VALUE of this function * As the seed argument computes the CRC8 VALUE of a * LONGer string of data. ************************************************************************************************ */ unsigned CHAR OW_ComputeCRC8(unsigned CHAR indata, unsigned CHAR seed) { unsigned CHAR bitsLeft; unsigned CHAR TEMP; for (bitsLeft = 8; bitsLeft > 0; bitsLeft--) { TEMP = ((seed ^ indata) & 0x01); if (TEMP == 0) { seed >>= 1; } else { seed ^= 0x18; seed >>= 1; seed |= 0x80; } indata >>= 1; } return seed; } /********************************************************************************************* * * Function NAME : Delay * * returns : None * * Parameters : unsigned int millisec * * Purpose : Delay-loop * *********************************************************************************************/ inline void Delay( unsigned int millisec ) { while( millisec-- ) for(uint8_t i = 0;i < 125; i++) asm volatile ("nop"::); } //本程序由xwj設(shè)計的UltraEdit腳本加亮顯示,如需要腳本請聯(lián)系xuwenjun@21cn.com |
|
| 16樓: | >>參與討論 |
| 作者: zlei 于 2005/6/23 14:22:00 發(fā)布:
報告一個問題 熱鍵CTRL+F12和金山詞霸的朗讀熱鍵沖突。需要關(guān)掉金山詞霸2005,宏才可以執(zhí)行。 |
|
| 17樓: | >>參與討論 |
| 作者: xwj 于 2005/6/24 16:51:00 發(fā)布:
呵呵,那就修改下熱鍵換成不沖突的啊 記得保存哦 |
|
| 18樓: | >>參與討論 |
| 作者: naofei67 于 2005/6/25 15:56:00 發(fā)布:
腳本有點小問題 一. 注釋中不應(yīng)該出現(xiàn)其他顏色 二. BitsLeft 變量名中的Bit不應(yīng)該變亮. |
|
| 19樓: | >>參與討論 |
| 作者: xwj 于 2005/6/25 20:15:00 發(fā)布:
是的,不過腳本畢竟不是程序,只能實現(xiàn)簡單功能 或許UE腳本里能夠全字匹配,那就好辦了 但是我還是覺得就算點亮也是利大于弊,所以也就不改了 呵呵 |
|
| 20樓: | >>參與討論 |
| 作者: fsaok 于 2005/6/25 23:01:00 發(fā)布:
. ![]() * - 本貼最后修改時間:2005-6-25 23:04:25 修改者:fsaok |
|
| 21樓: | >>參與討論 |
| 作者: 徐勇 于 2005/6/26 9:44:00 發(fā)布:
不錯,試試看。 /*------------------------------------------------------------------------------ HELLO.C COPYRIGHT 1995-1999 Keil SOFTWARE, Inc. ------------------------------------------------------------------------------*/ #include <REG52.H> /* special function register declarations */ /* for the intended 8051 derivative */ #include <stdio.h> /* prototype declarations for I/O functions */ #ifdef MONITOR51 /* Debugging with Monitor-51 needs */ CHAR code reserve [3] _at_ 0x23; /* space for serial interrupt if */ #endif /* Stop Exection with Serial intr. */ /* is enabled */ /*------------------------------------------------ The main C function. Program execution starts here after stack initialization. ------------------------------------------------*/ void main (void) { /*------------------------------------------------ Setup the serial PORT for 1200 baud at 16MHZ. ------------------------------------------------*/ #ifndef MONITOR51 SCON = 0x50; /* SCON: mode 1, 8-bit UART, enable rcvr */ TMOD |= 0x20; /* TMOD: timer 1, mode 2, 8-bit reload */ TH1 = 221; /* TH1: reload VALUE for 1200 baud @ 16MHZ */ TR1 = 1; /* TR1: timer 1 run */ TI = 1; /* TI: set TI to send first CHAR of UART */ #endif /*------------------------------------------------ Note that an embedded program never exits (because there is no operating SYSTEM to return to). It must loop and execute forever. ------------------------------------------------*/ while (1) { P1 ^= 0x01; /* Toggle P1.0 each time we pr[#0000ff]int */ printf ("[#ff0000]Hello World\n"); [#007f00]/* Pr[#0000ff]int "[#ff0000]Hello World" */ } } |
|
| 22樓: | >>參與討論 |
| 作者: xwj 于 2005/6/26 11:00:00 發(fā)布:
咦?怎么會嵌套出錯呢?我來試試 /*------------------------------------------------------------------------------ HELLO.C COPYRIGHT 1995-1999 Keil SOFTWARE, Inc. ------------------------------------------------------------------------------*/ #include <REG52.H> /* special function register declarations */ /* for the intended 8051 derivative */ #include <stdio.h> /* prototype declarations for I/O functions */ #ifdef MONITOR51 /* Debugging with Monitor-51 needs */ CHAR code reserve [3] _at_ 0x23; /* space for serial interrupt if */ #endif /* Stop Exection with Serial intr. */ /* is enabled */ /*------------------------------------------------ The main C function. Program execution starts here after stack initialization. ------------------------------------------------*/ void main (void) { /*------------------------------------------------ Setup the serial PORT for 1200 baud at 16MHZ. ------------------------------------------------*/ #ifndef MONITOR51 SCON = 0x50; /* SCON: mode 1, 8-bit UART, enable rcvr */ TMOD |= 0x20; /* TMOD: timer 1, mode 2, 8-bit reload */ TH1 = 221; /* TH1: reload VALUE for 1200 baud @ 16MHZ */ TR1 = 1; /* TR1: timer 1 run */ TI = 1; /* TI: set TI to send first CHAR of UART */ #endif /*------------------------------------------------ Note that an embedded program never exits (because there is no operating SYSTEM to return to). It must loop and execute forever. ------------------------------------------------*/ while (1) { P1 ^= 0x01; /* Toggle P1.0 each time we print */ printf ("Hello World\n"); /* Print "Hello World" */ } } |
|
| 23樓: | >>參與討論 |
| 作者: xwj 于 2005/6/26 11:13:00 發(fā)布:
基本正常啊,徐勇 是否復(fù)制得不完全啊? |
|
| 24樓: | >>參與討論 |
| 作者: xwj 于 2005/6/27 17:36:00 發(fā)布:
美化論壇,建議大家都來用 呵呵 |
|
| 25樓: | >>參與討論 |
| 作者: hotpower 于 2005/6/27 20:42:00 發(fā)布:
好... |
|
| 26樓: | >>參與討論 |
| 作者: xwj 于 2005/7/6 2:29:00 發(fā)布:
up |
|
| 27樓: | >>參與討論 |
| 作者: 艾森豪威爾 于 2005/7/8 15:59:00 發(fā)布:
大家用的UE什么版本的啊?我怎么總出現(xiàn)宏錯誤提示呢? |
|
| 28樓: | >>參與討論 |
| 作者: 艾森豪威爾 于 2005/7/11 10:14:00 發(fā)布:
大家用的UE什么版本的。课以趺纯偝霈F(xiàn)宏錯誤提示呢? |
|
| 29樓: | >>參與討論 |
| 作者: sanwa_chen 于 2005/7/11 11:11:00 發(fā)布:
find 有個參數(shù) MatchCase |
|
| 30樓: | >>參與討論 |
| 作者: 艾森豪威爾 于 2005/7/11 14:51:00 發(fā)布:
測試 failed! * - 本貼最后修改時間:2005-7-11 14:55:57 修改者:艾森豪威爾 |
|
| 31樓: | >>參與討論 |
| 作者: sch_l 于 2005/7/11 16:17:00 發(fā)布:
請問,這樣處理之后,要到瀏覽器里看嗎? 請問,這樣處理之后,要到瀏覽器里看嗎?word里應(yīng)該也可以吧,只是麻煩,ultradeit不能直接顯示查看彩色嗎?有點麻煩呀. |
|
| 32樓: | >>參與討論 |
| 作者: germy 于 2005/7/11 21:06:00 發(fā)布:
不行阿 我加載完那個宏之后,關(guān)掉Uedit,然后再打開Uedit,出現(xiàn)一個"宏錯誤"提示,怎么回事? |
|
| 33樓: | >>參與討論 |
| 作者: 艾森豪威爾 于 2005/7/12 11:59:00 發(fā)布:
我和樓上出現(xiàn)同一問題 |
|
| 34樓: | >>參與討論 |
| 作者: dodome521 于 2005/7/12 13:09:00 發(fā)布:
TEST void main(){ INTCON=0; TRISC=0x0; Angle=15; * - 本貼最后修改時間:2005-7-12 13:11:04 修改者:dodome521 |
|
| 35樓: | >>參與討論 |
| 作者: jackf125 于 2005/9/12 1:03:00 發(fā)布:
頂! |
|
| 36樓: | >>參與討論 |
| 作者: qin000000 于 2005/12/29 14:55:00 發(fā)布:
這是怎么回事 TEST void DispIcon(unsigned CHAR *icon_dot,unsigned CHAR dot_num,unsigned CHAR x,unsigned CHAR y) { unsigned CHAR i; unsigned CHAR *p; p=icon_dot; for(i=0;i<dot_num;i++) { SetPos((16*y+i+(16-dot_num)/2), x); WrNonParaCmd(CMD_AUT_WR); { WrDat(*p++); WrDat(*p++); } WrNonParaCmd(CMD_AUTWR_OVR); } } //本程序由xwj設(shè)計的UltraEdit腳本加亮顯示,如需要腳本請聯(lián)系xuwenjun@21cn.com //本程序由xwj設(shè)計的UltraEdit腳本加亮顯示,如需要腳本請聯(lián)系xuwenjun@21cn.com * - 本貼最后修改時間:2005-12-29 14:58:53 修改者:qin000000 |
|
| 37樓: | >>參與討論 |
| 作者: qin000000 于 2005/12/29 15:04:00 發(fā)布:
找到原因了多按了一下F12 TEST void DispIcon(unsigned CHAR *icon_dot,unsigned CHAR dot_num,unsigned CHAR x,unsigned CHAR y) { unsigned CHAR i; unsigned CHAR *p; p=icon_dot; for(i=0;i<dot_num;i++) { SetPos((16*y+i+(16-dot_num)/2), x); WrNonParaCmd(CMD_AUT_WR); { WrDat(*p++); WrDat(*p++); } WrNonParaCmd(CMD_AUTWR_OVR); } } //本程序由xwj設(shè)計的UltraEdit腳本加亮顯示,如需要腳本請聯(lián)系xuwenjun@21cn.com |
|
|
|
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |