ラベル MikroC の投稿を表示しています。 すべての投稿を表示
ラベル MikroC の投稿を表示しています。 すべての投稿を表示

2010年11月15日月曜日

RS232C通信-PCソフトを作成してLED点灯

PIC18F4550 USBマイコンボード(秋月電子通商製)で遊ぶ
のコーナーのCDC - Basic Demo の 
ボタンでLEDの点灯・消灯 で作ったソフトを流用して作成しました。


パソコン側ソフト:pic-pc.zip
ダウンロード

PIC側ソフト:rs232c-pic-pc.zip
ダウンロード

RS232C通信-コマンドでLED点滅

とりあえずRS232C通信 で作成したプログラムを修正して、
コマンドを送ってLEDを点滅させるプログラムに変更したいと思います。

/*
概要:RS232C通信-コマンドでLED点滅

対象PIC  :PIC16F88
クロック :内蔵8MHz
コンパイラ:mikroC Version: 8.2.0.0

電源:5V

コンフィグレーションフラグ:
_CP_OFF  _CCP1_RB3  _DEBUG_OFF  _WRT_ENABLE_OFF
_CPD_OFF  _LVP_OFF  _BODEN_OFF  _MCLR_OFF  _PWRTE_ON
_WDT_OFF  _INTRC_IO  _IESO_ON__CFG2  _FCMEN_ON__CFG2


*/

void main() {

    unsigned short int com;


 PORTA = 0b00000000;  //PortBの中初期化
 PORTB = 0b00000000;  //PortBの中初期化

 OSCCON = 0b01110000; //8MHzを指定

 ANSEL = 0b00000000;  //すべてデジタルポート

 TRISA = 0b00000000;
 TRISB = 0b00000100;    //B2/RXを入力に,B5/TXを出力

 Usart_Init(9600);      //通信速度の設定

 do {

        if (Usart_Data_Ready()) {
            com = Usart_Read(); //受信データの読込
        }

        switch(com) {
            case 'a':
                PORTA.F0 = 1; //RB5 ON
                break;
            case 'b':
                PORTA.F0 = 0; //RB5 OFF
                break;
        }
    } while(1);

}

とりあえずRS232C通信

使うのは2,3,5,7,8番ピン
7番ピンと8番ピンは直結します。
パソコンからの送信要求(7番ピン)に対し、
無条件に送信可(8番ピン)を返すようにするためです。
5番ピンはグランドに接続します。
2番ピンと3番ピンだけが、PICから制御する信号線になります。


aを永遠に送り続けるだけのプログラム
/*
概要:取り合えすRS232C通信

対象PIC  :PIC16F88
クロック :内蔵8MHz
コンパイラ:mikroC Version: 8.2.0.0

電源:5V

コンフィグレーションフラグ:
_CP_OFF  _CCP1_RB3  _DEBUG_OFF  _WRT_ENABLE_OFF
_CPD_OFF  _LVP_OFF  _BODEN_OFF  _MCLR_OFF  _PWRTE_ON
_WDT_OFF  _INTRC_IO  _IESO_ON__CFG2  _FCMEN_ON__CFG2


*/

void main() {
 PORTA = 0b00000000;  //PortBの中初期化
 PORTB = 0b00000000;  //PortBの中初期化

 OSCCON = 0b01110000; //8MHzを指定

 ANSEL = 0b00000000;  //すべてデジタルポート

 TRISA = 0b00000000;
 TRISB = 0b00000100;    //B2/RXを入力に,B5/TXを出力

 Usart_Init(9600);      //通信速度の設定

 do {
    Usart_Write('a'); //RS232C通信でPCへ送信
 } while(1);

} 





mikroC のメニューバーのTools から USART Terminal を開いて接続してたところ


ハイパーターミナルで表示した場合

電源を入れた直後の接続しか正常に常時出来ません。
接続と切断を繰り返すと別な文字が表示されたりします。

2010年11月10日水曜日

LEDの点滅

/*
概要:A/D変換値を液晶ディスプレイ(LCD)に表示 データ4bit接続

対象PIC  :PIC16F88
クロック :内蔵8MHz
コンパイラ:mikroC Version: 8.2.0.0

Led  :RA0

電源:5V

コンフィグレーションフラグ:
* _CP_OFF  _CCP1_RB3  _DEBUG_OFF  _WRT_ENABLE_OFF
* _CPD_OFF  _LVP_OFF  _BODEN_OFF  _MCLR_OFF  _PWRTE_ON
* _WDT_OFF  _INTRC_IO  _IESO_ON__CFG2  _FCMEN_ON__CFG2


*/
void main() {

     PORTA = 0b00000000; //PORTAの初期化
     PORTB = 0b00000000; //PORTBの初期化
     OSCCON = 0b01110000; //内臓クロック8MHzに設定

    // A/D利用PORTの設定 // ANALOG=1, DIGITAL=0
    ANSEL = 0b00000000; //全てデジタル使用

    TRISA = 0b00000000; //PORTA 全て出力に設定

    do {
        //RA0 のLDEを点滅させる
        PORTA.F0 = 1;
        Delay_ms(1000);
        PORTA.F0 = 0;
        Delay_ms(1000);
    } while(1);
}

2010年11月9日火曜日

LCDに文字を表示


mikroC で用意されているライブラリを使用しています。
可変抵抗器VRは10KΩの炭素被膜抵抗器に置き換える事も可能です。

/*
概要:A/D変換値を液晶ディスプレイ(LCD)に表示 データ4bit接続

対象PIC  :PIC16F88
クロック :内蔵8MHz
コンパイラ:mikroC Version: 8.2.0.0

LCD制御 :R/W:RB0  RS:RB2  E:RB3
LCDデータ:DB4:RB4 DB5:RB5 DB6:RB6 DB7:RB7 

電源:5V

コンフィグレーションフラグ:
 _CP_OFF  _CCP1_RB3  _DEBUG_OFF  _WRT_ENABLE_OFF
 _CPD_OFF  _LVP_OFF  _BODEN_OFF  _MCLR_OFF  _PWRTE_ON
 _WDT_OFF  _INTRC_IO  _IESO_ON__CFG2  _FCMEN_ON__CFG2
*/
void main()
{

    PORTA = 0b00000000; //PORTAの初期化
    PORTB = 0b00000000; //PORTBの初期化
    OSCCON = 0b01110000; //内臓クロック8MHzに設定

    // A/D利用PORTの設定 // ANALOG=1, DIGITAL=0 //
    ANSEL = 0b00000000; //全てデジタル使用

    //PORTの設定 0:出力 1:入力
    TRISA = 0b00000000; //PORTA 全て出力に設定
    TRISB = 0b00000000; //PORTB 全て出力に設定
    //マイコンの初期化終わり

    Lcd_Config(&PORTB,2,3,0,7,6,5,4); //LCDのピン接続設定
    Lcd_Init(&PORTB); //LCD初期化

    Lcd_Cmd(LCD_CURSOR_OFF); //カーソル非表示

    Lcd_Out(1, 1, "hello sc1602bslb");//LCD上段文字列表示
    Lcd_Out(2, 1, "pic16f88"); //LCD下段文字列表示

}

タブがスペースに変換されるのを解除

メニューバーのTools->Options... を選択します。
Open options dialog... ボタンをクリックします。
Options タブを選択します。
 Tab to spaces のチェックを外します。

2010年11月8日月曜日

背景、コメントの斜体・色の変更

メニューバーのTools->Options... を選択します。
 コメントが斜体だと見にくいので、Itakic を解除しました
また、緑だと 設定値の緑と同じで見にくいので色を変更しました。

2010年11月7日日曜日

フリーカーソルを解除

メニューバーのTools->Options... の Open options dialog... ボタンをクリックします。
Editor Options ダイアログが開きます。
Options タブを選択し、
Scroll past end of line をクリックします。

コメントの日本語表示

mikroC をC:\Program Files にインストールした場合、
普通にダブルクリックで起動させたら、設定の変更が出来ないようなので、
管理者として開きます。
アイコンの上で右クリックして、管理者として実行 をクリックします。



Font ボタンをクリックします。

日本語フォントを選択し、文字セットを日本語にし、OKをクリックします。

他のウィザードもOKをクリックして閉じます。
Preferences でOKをクリックした時に、メッセージが表示されて、設定が反映されない場合は、
mikroC を管理者権限で実行させて下さい。

コメントで日本語が利用出来るようになりました。

最初のプロジェクト

microCを起動させたら、
メニューから Project->New Project をクリックします。

注:PIC12F629 の内部発振は4MHz
PIC12F683 の内部発振は8MHz

mikroC for PICの概要

コードサイズの制限が2Kワード以下
サポートされるピック:PIC12,PIC16,PIC18

2010年11月6日土曜日

MikroCのインストール

ファイルをダウンロードして解凍します。
ファイルはhttp://www.mikroe.com/eng/products/view/411/mikroc-for-pic/ にあります。

解凍したフォルダにmikroC_8_2_0_0.exe が出来ているので起動させます。
Next > をクリックします。

I accept .... を選択して Next > をクリックします。


プログラムを保存する場所を選択して、
Install をくりっくします。

(参考)C:\Program Files にインストールと管理者権限で実行しないと設定ファイルが保存できないなど、めんどくさいので、別のフォルダを選択してインストールするのがおすすめです。

インストール中

Finish を押します。

他のプログラムもインストールするか聞いてくるので、
いいえ(N) をクリックします。

プログラムをダウンロードしたさいとに、
英語のマニュアルがあります。

スタート から すべてのプログラムを選択して、
Mikroelektronika->mikroC->mikroC を選択して起動させるか、
デスクトップのアイコンをダブルクリックします。
mikroC compiler for PIC が起動しました。