Community Translation - Bit Addressability of GPIO Pins in PSoC® 3 - KBA88236

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Kenshow
Level 8
Level 8
Distributor - Marubun (Japan)
50 solutions authored 25 solutions authored 10 solutions authored

Hi,               

I would like to translate KBA88236 into Japanese.

Please confirm to my work.

Thanks,

Kenshow

0 Likes
2 Replies
JennaJo
Moderator
Moderator
Moderator
1000 replies posted 750 replies posted 500 replies posted

Hi, Kenshow-san

Confirm to work this KBA.

Thanks,

Jenna

Jenna Jo
0 Likes
Kenshow
Level 8
Level 8
Distributor - Marubun (Japan)
50 solutions authored 25 solutions authored 10 solutions authored

Hi Jenna-san,

                                

Japanese translation was over.
Please check below.

Original KBA:

Bit Addressability of GPIO Pins in PSoC® 3 - KBA88236

Thanks.

Kenshow

==============================

タイトル: PSoC®3のGPIOピンのビットアドレス指定

バージョン:*A

質問:

PSoC®3の個々のGPIOピンはどのようにアドレス指定すればよいでしょうか?

回答:

8051コードと同様に、PSoC 3はポートピンを個別にアドレス指定する柔軟性を提供します。これを行うには、特殊機能レジスタ(SFR)レジスタ領域を使用して特定のビットにアクセスします。Keilコンパイラーは、キーワード「sbit」を提供します。これは、SFRビットにアクセスするために使用されます。sbitSFRレジスタにのみ使用できることに注意してください。

例えば:

ピンPRT1.7にアクセスするには、次のようにSFRビットを定義します。

sbit bit_led=SFRPRT1DR^7; //これにより、PRT1.7ビットがアドレス可能になります

これで、次のコードを使用してビットを設定またはクリアできます。

bit_led = 1;//ビットを設定します
bit_led = 0;// ビットをクリアします

これを行う別の方法は、SETBコマンドを使用することです。これはアセンブリコマンドなので、インラインアセンブリメソッドを使用して含める必要があります。

#pragma asm
SETB bit_led ;ビットを設定するビットを
CLRB bit_led ;クリアする
#pragma endasm

GPIOSFRを使用して確実に制御されるようにするには、アクセスされているピンに対応するSFRPRTxSELレジスタビットを「1」に設定します。この例では、次に示すように、SFRPRT1SELのビット7が「1」に設定され、PRT1.7にアクセスします。

SFRPRT1SEL |= 0x80; //これにより、SRTを介してPRT1.7を制御できるようになります

インラインアセンブリを有効にするために必要な設定についてはPSoC CreatorPSoC 3のアセンブリ言語を使用するナレッジベースの記事を参照してください。

SFRおよびsbitキーワードの使用、およびそれらがPSoC 3 I/Oピンにどのように適用されるかについての詳細は、アプリケーションノートAN60630-PSoC®3 8051コードおよびメモリ最適化を参照してください。

==============================

07-August-2020

  Kenshow

0 Likes