学習メモ | 遅延に基づく LED 点滅 | モジュール式プログラミング | SOS 救難信号 | STC32G マイクロコントローラーのビデオ開発チュートリアル (Brother Chong) | エピソード 6 (パート 2): LED 点滅の実現

2 機能の使い方

モジュール型プログラミングでは、関数の使用は次の 3 つのステップに分かれています。

1. 関数定義(型が必要)

戻り値 関数名 (エントリパラメータ)
{ 関数によって実行される関数} @戻り値: 戻り値は無効です@関数名: キーワードを避ける (IDE では青)、繰り返し禁止、特殊文字以外も使用可能@entryパラメータ: タイプ + 名前、「,」で区切られた複数のパラメータ、空の場合は void と書き込みます




2. 関数宣言(型が必要)

戻り値関数名(入力パラメータ);

3. 関数呼び出し

関数名 (入力パラメータ)。呼び出すときは、パラメータを入力するだけでよく、型は必要ありません。

3 新しいファイルを作成し、モジュール式プログラミングを使用する

新しい xxx.c および xxx.h ファイルを作成します

機能ブロックを表す新しい xxx.c および xxx.h ファイルを作成します。1対1での対応をお勧めします。
[新規] をクリックします。デフォルトでは、テキスト ファイルがポップアップします。ファイル タイプは定義されていません。[保存] をクリックして math.c として保存し、さらに math.h として保存します。
ここに画像の説明を挿入

xxx.h 形式:

#ifndef __XXX_H
#define __XXX_H は、
math.h に固定の一致形式を追加します。

呼び出しヘッダー ファイル

関数宣言…
#endif

xxx.c 形式
#include "xxx.h"
関数定義

検証コード

math.h:

#ifndef __MATH_H  //if not define
#define __MATH_H

int Add(int parm1,int parm2);

#endif

math.c:

int Add(int parm1,int parm2)
{
	return   parm1 + parm2;
}

main.c への参照を追加します: #include "math.h"。

移行:

ファイルを追加するときは、パスを参照してプロジェクトに追加することを忘れないでください。
ここに画像の説明を挿入
すべてを保存し、アイコンをダブルクリックし、math.c をプロジェクトに追加すると
ここに画像の説明を挿入
コンパイルが完了し、自動的に開発ボードにダウンロードされます。CDC シリアル ポート ツールを開き、データ領域をクリアし、データを送信し、出力された値を取得します。
ここに画像の説明を挿入
これにより、メイン関数のコードが非常にクリーンになり、大規模なプロジェクトの管理と編成に便利です。

完全なファイル構造は次のとおりです。

ここに画像の説明を挿入

認証コード2

math.h:

#ifndef __MATH_H  //if not define
#define __MATH_H

int Add(int parm1,int parm2);  //parm1+parm2
int Sub(int parm1,int parm2);  //parm1-parm2
int Mul(int parm1,int parm2);  //parm1*parm2

#endif

math.c:

#include "math.h"

int Add(int parm1,int parm2)
{
	return   parm1 + parm2;
}

int Sub(int parm1,int parm2)
{
	return   parm1 - parm2;
}

int Mul(int parm1,int parm2)
{
	return   parm1 * parm2;
}

main.c で呼び出されます:

			printf("add(10,20)计算结果为: %d\r\n",Add(10,20));+

			printf("sub(5,2)计算结果为: %d\r\n",Sub(5,2));

			printf("Mul(5,6)计算结果为: %d\r\n",Mul(5,6));

通常通り実行してください。
ここに画像の説明を挿入

要約する

1. while ループのプロセスに慣れる
2. 関数の使用方法 (定義、宣言、呼び出し) を学ぶ
3. 新しいファイルの作成、ファイル パスの追加、プロジェクトへの追加方法を学ぶ

授業後の演習: SOS 救難信号のプログラミング

遭難信号の原理

出典: Asking Knowledge: SOS をライトでどのように表現しますか?
短い 3 つ、長い 3 つ、短い 3 つ
SOS は世界共通の遭難信号です。光信号で表すと、3 つの短いライトは S の文字を表し、3 つの長いライトは文字を表します。ライトは文字 O を表し、その後に続く 3 つの短いライトは S を表します。
ライトの長い点灯時間は短い点灯時間の3倍、短い点灯時間はLEDの2つの点灯時間の間隔と同じであり、また、文字間の短い点灯時間の3倍の消灯間隔があります。そして次の手紙。

サンプルコード

		//S
		while( time < 4 )
		{
		 P22 = 0; //设置低电平	(屠龙刀三板载led)
		 P24 = 0;
		 delay_ms(500);
		 P22 = 1; //设置低电平	(屠龙刀三板载led)
		 P24 = 1;
		 delay_ms(500);
		 time++;
		}
		delay_ms(1000);
		time = 1;
		//O
		while( time < 4 )
		{
		 P22 = 0; //设置低电平	(屠龙刀三板载led)
		 P24 = 0;
		 delay_ms(1500);
		 P22 = 1; //设置低电平	(屠龙刀三板载led)
		 P24 = 1;
		 delay_ms(500);
		 time++;
		}
		delay_ms(1000);
		time = 1;
		//S
		while( time < 4 )
		{
		 P22 = 0; //设置低电平	(屠龙刀三板载led)
		 P24 = 0;
		 delay_ms(500);
		 P22 = 1; //设置低电平	(屠龙刀三板载led)
		 P24 = 1;
		 delay_ms(500);
		 time++;
		}
		delay_ms(1000);
		time = 1;
    ```


おすすめ

転載: blog.csdn.net/Medlar_CN/article/details/132336734