Project_OKI’s diary

エンジニアの勉強ブログ

2023-01-01から1年間の記事一覧

C言語基礎知識31(乱数の作成)

C言語で乱数の作成 この記事では、C言語で乱数を作成する方法について記載する。 1. 目的 ・C言語で乱数(ランダムな数値)を生成する方法について記載する。 目次 C言語で乱数の作成 1. 目的 2. 乱数を作成する方法 2.1数値を文字列に変換する関数 2.2 使用方…

STM32マイコン29(CubeIDEの出力されるフォルダ構成の選択)

STM32 (CubeIDEのフォルダ構成の選択) 1.本日の内容 (1) CubeIDEで出力されるフォルダ構成は2種類ある。 そのフォルダ構成の違いについて記載する。 参考:https://www.st.com/resource/ja/user_manual/um1718-stm32cubemx-for-stm32-configuration-and-init…

STM32マイコン28(LCDに数値を表示する)

STM32 (LCDに取得した数値を表示) 1.本日の内容 (1) STM32マイコン(nucleof401re)を使用して、 LCD(ACM1602)に取得した数値を表示する。 文字列は、そのまま出力することが出来るが、LCDに数値を表示する場合、 取得した数値を文字列に変換する必要がある。 …

STM32マイコン27(スイッチの短押し/長押し処理 )

STM32 (スイッチ長押し/短押し制御) 1.本日の内容 (1) STM32マイコン(nucleof401re)を使用して、 スイッチの長押し/短押しの判定を行う。 ・目次 STM32 (スイッチ長押し/短押し制御) 1.本日の内容 2.内容 (1) やる内容の詳細 (2) 使用部品 (2) CubeIDEの設定…

C言語基礎知識30(数値を文字列に変換)

数値(変数)を文字列に変換する この記事では、C言語で数値を文字列に変換する。 1. 目的 ・C言語で取得した数値を文字列に変換する方法について理解する。 目次 数値(変数)を文字列に変換する 1. 目的 2. 取得した数値を文字列に変換する方法 2.1数値を文字…

C言語基礎知識29(条件演算子の使い方)

条件演算子の使い方 この記事では、条件演算子の使い方について説明する。 1. 目的 ・条件演算子の使い方について理解する。 ・条件演算子を使って、実際にプログラムを作成し、使い方を学ぶ。 演算子については下記にも記載している: ・C言語基礎知識21(演…

STM32マイコン26(割り込み:TIM3_IRQHandler)

割り込み:TIM3_IRQHandler 1.本日の内容 (1) STM32マイコン(nucleof401RE)を使用しLEDの点灯/消灯を制御する。 (2) 割り込み処理を行う場合、下記2つの関数がある。 ・void HAL_TIM_PeriodElapsedCallback(TIM_HandleTypeDef *htim) ・void TIM3_IRQHandler…

C言語基礎知識28(構造体の中で構造体を宣言する)

構造体の中で構造体を宣言する この記事では、C言語で扱う構造体の中で構造体を宣言した場合の使い方について記載する。 例えば、構造体Aがあり、それを構造体Bの中でAを宣言する場合などがある。 そうした場合の使い方について記載する。 1. 目的 ・構造体…

C言語基礎知識27(構造体を複数の別ファイルで使用する)

構造体を複数の別ファイルで使用 この記事では、C言語で扱う構造体を、複数のファイル(ソースファイル、ヘッダファイル)で使用する際の使い方について記載する。 基本的に、C言語で何かを作成する場合、1つのファイルで終わることは少ない。 複数のソースフ…

C言語基礎知識26(構造体の配列)

構造体の配列としての使い方 この記事では、C言語で扱う構造体を配列で宣言する使い方の一つについて記載する。 1. 目的 ・構造体を配列で宣言し、使用する方法について学ぶ 構造体については下記にも記載している: ・C言語基礎知識7(構造体1) - Project_OK…

C言語基礎知識25(文字列を数値に変換)

文字列を数値に変換する この記事では、C言語で取得した文字列を数値に変換する方法について記載する。 1. 目的 ・C言語で取得した文字列を数値に変換する方法はいくつかあり、 その方法(関数について)理解する。 目次 文字列を数値に変換する 1. 目的 2. at…

CubeIDE AD変換の設定

STM32 (DMAでAD変換) 1.本日の内容 (1) CubeIDEのAD変換の設定項目についてまとめました。 AD変換の設定を行う際の参考にしてください。 ※使用マイコン:nucleof401 ・目次 STM32 (DMAでAD変換) 1.本日の内容 2.内容 ​​(1) 設定内容 ​​(2) 設定の詳細内容 (a…

C言語基礎知識24(全探索)

アルゴリズム:全探索 この記事では、アルゴリズムの一つ、全探索に関して簡単に記載する。 1. 目的 ・全探査について理解する。 ・C言語で全探査を行う方法について理解する。 目次 アルゴリズム:全探索 1. 目的 2. 全探索とは 3. 基本的な全探索手順 4. …

STM32マイコン25(LCD:ACM1602のI2C制御方法)

STM32 (I2C通信でLCD制御) 1.本日の内容 (1) STM32マイコン(nucleof401re)を使用して、 LCD(ACM1602)にHellow worldを表示する。 プログラム動作確認用に、LEDを点灯する。 ・目次 STM32 (I2C通信でLCD制御) 1.本日の内容 2.内容 (1) やる内容の詳細 (2) 使…

C言語基礎知識23(文字を2進数、10進数で表示)

文字と2進数、10進数の関係とキーコードについて この記事では、コンピュータにおける文字の表現方法について。説明する コンピュータには、文字を表すために2進数や10進数を用いることがある。 1. 目的 ・文字が2進数、10進数で使用できることを理解する。 …

I2C通信とは

​​​​ I2C通信とは 1.目的 I2C通信について、理解する。 I2C通信で何を行っているのかについて理解する。 目次 I2C通信とは 1.目的 2.I2C通信とは 2.I2C通信の特徴 3.通信速度 4.通信に関して 5.配線に関して 6.基本的な通信のやり取り 7.通信タイミングにつ…

オープンドレインとは、オープンコレクタとは

オープンドレインとオープンコレクタについて 目次: オープンドレインとオープンコレクタについて 1.オープンドレインについて (a) オープンドレインとは (b)オープンドレインの利点 (c) オープンドレインの欠点 (d) マイコンにおけるオープンドレイン 2.オ…

ソフトウェア基礎知識2(2進数から16進数への変換方法)

2進数と16進数の関係と変換方法 1.目的 16進数について理解する。 2進数から16進数への変換、関係性について理解する。 これらは、整数場合について記載している。少数は対象としていない。 目次 2進数と16進数の関係と変換方法 1.目的 2. 16進数とは 3. 16…

STM32マイコン24(DMAでAD変換)

STM32 (DMAでAD変換) 1.本日の内容 (1) STM32マイコン(nucleof401re)を使用して、DMAを使用してAD変換を行う。 動作: STM32マイコン(nucleof401)でAD変換(DMA使用) pic.twitter.com/vZ54UFj9xH— Project OKI (@oki_project) 2023年3月11日 ※AD変換のDMAとは…

STM32マイコン23(WDTでプログラム暴走時のリスタート処理)

STM32でWDTでプログラム暴走時のリスタート処理 1.本日の内容 (1) プログラム暴走時のリスタート処理について、説明する。 (1) STM32マイコンで、WDT(ウォッチドックタイマ)の中でもIWDGを使用して、 プログラムが強制リセット出来ることを確認する。 ・目次…

STM32マイコン22(printfのソースファイル、ヘッダファイルの作成)

STM32(nucleof401)でprintf使用 1.本日の内容 (1) STM32マイコン(nucleof401RE)でprintfを使用できるようにする。 (2) printfを使用できるソースファイル、ヘッダファイルを作成する。 参考:STM32マイコン_12(printfの導入) - Project_OKI’s diary ・目次 S…

STM32マイコン21(DFplayer関数作成)

STM32(nucleof401)用DFplayerの関数作成 1.本日の内容 (1) STM32マイコン(nucleof401RE)で使用するDFplayerの関数を作成する。 ・目次 STM32(nucleof401)用DFplayerの関数作成 1.本日の内容 2.内容 ​​(1) やる内容の詳細​ (2) CubeMXの設定 (3) 作成する関数…

mbedでソレノイド制御

mbedでソレノイド制御 1.本日の内容 (1) mbed(nucleof401RE)を使用し、ソレノイドをON/OFFする回路を作成する。 (2) mbedでソレノイドをON/OFFするプログラムを作成する。 ・目次 mbedでソレノイド制御 1.本日の内容 2.内容 ​​(1) やる内容の詳細​ (2) 使用…

英語勉強7(Yeah,I know exactly what she's going through.の意味)

次の動画の最初の部分の聞き取りをせよ。 www.youtube.com (1) 次の文の意味を考えよ。 Hey,anyone hear from phoebe yet? No,nothing. I hope she's okay. Yeah,I know exactly what she's going through. (2) exactlyの意味を答えよ。 "Exactly" means "in…

chatGPTを使用してVBAを行うメモ1(他のエクセルへのコピー)

VBA

chatGPTを使用してVBAを行う1 VBAに触れたことがない私でも、エクセルの操作を簡単に行いたいと思い、chatGPTに相談しながらVBAを使ってやりたいことを実現しました。 chatGPTは非常に有能で、初心者でも使いやすく、おすすめです。 ・目次 chatGPTを使用し…

C言語基礎知識22(memset関数による配列の初期化)

memset関数による配列の初期化する 【C言語入門】 memset関数の使い方と配列初期化のコツを解説! 「memset関数」とは、C言語やC++言語において配列を初期化するための関数です。 この記事では、memset関数の概要や使い方を詳しく解説し、 具体的なプログラ…

英語勉強6(nothing,hopeの意味)

次の動画の最初の部分の聞き取りをせよ。 www.youtube.com (1) 次の文の意味を考えよ。 Hey,anyone hear from phoebe yet? No,nothing. I hope she's okay. Yeah,I know exactly what she's going through. (2) nothingの意味を答えよ。 The term "nothing" …

英語勉強5(anyone,hear,from,yetの意味)

次の動画の最初の部分の聞き取りをせよ。 www.youtube.com (1) 次の文の意味を考えよ。 Hey,anyone hear from phoebe yet? No,nothing. I hope she's okay. Yeah,I know exactly what she's going through. (2) anyoneの意味を答えよ。 "Anyone" is a pronou…

mbedとマルチプレクサで、複数サーボモータ制御

mbedとマルチプレクサで、複数サーボモータ制御 1.今回の目標 (1) nucleo f401でGPIO出力を行い、マルチプレクサを制御する。 (2) nucleof401とマルチプレクサで、複数のサーボモータを制御する。作成したもの: 2.使用部品 個数 部品名 型番 1 接続ケーブル…

mbed(nucleo f401)でサーボモータを動作させる

​​ mbedでサーボモータ制御 1.目的 (1) nucleo f401でPWM出力を行い、サーボモータを動作させる。 (2) mbedのプログラムで実装する (3) STM32マイコンのプログラムで実装する。作成したもの: 2.使用部品 個数 部品名 型番 1 接続ケーブル ジャンパーワイヤ​…