音影先锋亚洲天堂网|电影世界尽头的爱完整版播放|国产 熟女 91|高清无码免费观看欧美日韩|韩国一区二区三区黄色录像|美女亚洲加勒比在线|亚洲综合网 开心五月|7x成人在线入口|成人网站免费日韩毛片区|国产黄片?一级?二级?三级

登錄 免費注冊 首頁 | 行業(yè)黑名單 | 幫助
維庫電子市場網(wǎng)
技術(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 欄目:單片機
*美化論壇,發(fā)彩色代碼的簡單方法(完整功能版)*
呵呵
看了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
轉(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
re
呵呵,沒看到壓縮包

4樓: >>參與討論
xwj
新的壓縮包
 

* - 本貼最后修改時間:2005-6-26 11:17:41 修改者:xwj

腳本文件壓縮包,請下載后將文件擴展名jpg改成RAR解壓到任意目錄

5樓: >>參與討論
LPC900
我從來不用UE
我用的是EmEditor。有人說UE最好了,那我要說EmEditor可以排第二啦。我實現(xiàn)彩色關(guān)鍵字的方法是文本替換,而EmEditor正好提供了有效的手段。

6樓: >>參與討論
xwj
呵呵,我也喜歡用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樓: >>參與討論
艾森豪威爾
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
好東西,看代碼的時候方便了
  

9樓: >>參與討論
艾森豪威爾
???????????
 

* - 本貼最后修改時間:2005-6-22 16:13:06 修改者:艾森豪威爾

10樓: >>參與討論
艾森豪威爾
hello,xwj,有點問題
我加載完那個宏之后,關(guān)掉Uedit,然后再打開Uedit,出現(xiàn)一個"宏錯誤"提示,怎么回事?

11樓: >>參與討論
xwj
宏錯誤?不會是不同版本不兼容吧?腳本也會有兼容問題嗎?
 艾森豪威爾 發(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
謝謝指點
 
13樓: >>參與討論
汽車電子
好東東
   奇怪,怎么看到樓主的貼圖里的C語言全是黑色的???

   我的UE本來就支持關(guān)鍵字顯示不同的顏色,版本是11.00a+

   用來發(fā)到21icbbs上,樓主的東東確實很好用,謝了.

* - 本貼最后修改時間:2005-6-23 9:12:51 修改者:汽車電子

14樓: >>參與討論
艾森豪威爾
樓主,我的UE是10.0CH版本的
是不是不兼容?

15樓: >>參與討論
zlei
測試一下
#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
報告一個問題
熱鍵CTRL+F12和金山詞霸的朗讀熱鍵沖突。需要關(guān)掉金山詞霸2005,宏才可以執(zhí)行。

17樓: >>參與討論
xwj
呵呵,那就修改下熱鍵換成不沖突的啊
記得保存哦

18樓: >>參與討論
naofei67
腳本有點小問題
一. 注釋中不應(yīng)該出現(xiàn)其他顏色
二. BitsLeft 變量名中的Bit不應(yīng)該變亮.

19樓: >>參與討論
xwj
是的,不過腳本畢竟不是程序,只能實現(xiàn)簡單功能

或許UE腳本里能夠全字匹配,那就好辦了

但是我還是覺得就算點亮也是利大于弊,所以也就不改了
呵呵


20樓: >>參與討論
fsaok
.


* - 本貼最后修改時間:2005-6-25 23:04:25 修改者:fsaok

21樓: >>參與討論
徐勇
不錯,試試看。
/*------------------------------------------------------------------------------
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
咦?怎么會嵌套出錯呢?我來試試
/*------------------------------------------------------------------------------
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
基本正常啊,徐勇 是否復(fù)制得不完全啊?
 
24樓: >>參與討論
xwj
美化論壇,建議大家都來用
呵呵

25樓: >>參與討論
hotpower
好...
 
26樓: >>參與討論
xwj
up
 
27樓: >>參與討論
艾森豪威爾
大家用的UE什么版本的啊?我怎么總出現(xiàn)宏錯誤提示呢?
 
28樓: >>參與討論
艾森豪威爾
大家用的UE什么版本的。课以趺纯偝霈F(xiàn)宏錯誤提示呢?
 
29樓: >>參與討論
sanwa_chen
find 有個參數(shù) MatchCase
 
30樓: >>參與討論
艾森豪威爾
測試
failed!

* - 本貼最后修改時間:2005-7-11 14:55:57 修改者:艾森豪威爾

31樓: >>參與討論
sch_l
請問,這樣處理之后,要到瀏覽器里看嗎?
請問,這樣處理之后,要到瀏覽器里看嗎?word里應(yīng)該也可以吧,只是麻煩,ultradeit不能直接顯示查看彩色嗎?有點麻煩呀.

32樓: >>參與討論
germy
不行阿
我加載完那個宏之后,關(guān)掉Uedit,然后再打開Uedit,出現(xiàn)一個"宏錯誤"提示,怎么回事?

33樓: >>參與討論
艾森豪威爾
我和樓上出現(xiàn)同一問題
 
34樓: >>參與討論
dodome521
TEST
void main(){
    INTCON=0;
    TRISC=0x0;
    Angle=15;

* - 本貼最后修改時間:2005-7-12 13:11:04 修改者:dodome521

35樓: >>參與討論
jackf125
頂!
 
36樓: >>參與討論
qin000000
這是怎么回事
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
找到原因了多按了一下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


參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
EEPROM與FLASH閃存到底有什么區(qū)別?
一個D/A問題
s3c44bo 集體做板
怎么樣設(shè)置使keil debug 時,觀察的變量時時刷新
仿真正常,芯片插入后不能正常工作,會是哪些原因?
免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入


Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號