2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

STM32スレ part6

1 :774ワット発電中さん:2023/10/29(日) 21:10:58.37 ID:RDUHlkMr.net
ST Microelectronics 社のARM マイコン

2つの日本語ページ
http://www.st.com/ja/microcontrollers-microprocessors.html

http://www.stmcu.jp

前スレ
STM32スレ part4
https://rio2016.5ch.net/test/read.cgi/denki/1622644887/
STM32スレ part5
https://rio2016.5ch.net/test/read.cgi/denki/1666480835/

290 :774ワット発電中さん:2024/07/25(木) 08:39:57.30 ID:UtMPXMxx.net
>>287
4 cube mx cube ide がその役目とおもえばまあおk

291 :sage:2024/07/25(木) 11:51:51.86 ID:bYcPH+cx.net
>>287
ttps://edn.itmedia.co.jp/edn/spv/2108/31/news034.html

292 :774ワット発電中さん:2024/07/25(木) 13:13:13.11 ID:OIkOkjNG.net
>>291
この連載、結構いいよね

293 :774ワット発電中さん:2024/07/25(木) 17:07:11.62 ID:KeUp09jX.net
>>289
>3は、チップによっては内蔵されてるよ。
ありがとうございます。
もしユーザーが消しちゃったら、また書き込めるものなんでしょうか。

>>291
ありがとうございます。
このページ、読んでみます。本も買ってみようかなと思います。

またPICベースで申し訳ありませんが、教えてください。

5.
PICではPICKit4などの「ROM書き込み器」が必要だったのですが、
STMの世界では、上記のUSB+ブートローダかJTAGを使って書き込むことを知りました。
JATGというと XilinxのFPGA書込ケーブル(赤いやつ)を持っているのですが、
これがそのまま使えるという訳ではないでしょうか?

6.
ARMマイコンというと、電源起動シーケンスIC(PSOCK?)が必要だと思っていましたが、
STM32では特に手順などは不要なのでしょうか。無し無しでありがたいことです。
STM=ARM=PSOCK-IC必要と思い嫌いで、ずっとPICで頑張っていました。

さきほど NUCLEO-64 STM32F302R8 を注文しました。

294 :774ワット発電中さん:2024/07/25(木) 17:15:23.49 ID:KeUp09jX.net
>>288
ありがとうございます。
ハードウェア アブスト楽テッド レイヤー の略ですね。
やっとスッキリしました。

>cubemxはデバイス設定用のコードをGUIで作る便利ツール。
>cubeideはワンストップで開発するためのツール。
Cube-MXは、PICで言うMCC
CUBE-IDEは、PICで言うMPLAB-IDE という感じに理解しました。
ありがとうございました。

>3番はnucleoボードの話で、チップ単体にその機能はない。
そのNucleo(ナクレオ?)基板を製造するメーカーが、
フラッシュROMのある領域に焼き込んで出荷しているブートローダーの働きかなと思いました。
ちょっと違うっぽいですね。

295 :774ワット発電中さん:2024/07/25(木) 18:43:36.25 ID:TceXwqze.net
>>293
3は専用のROMエリアに入ってるから、普通には消せない。
というか、消す方法は普通には公開されていない。

296 :774ワット発電中さん:2024/07/25(木) 18:45:55.74 ID:TceXwqze.net
>>294
Nucleoでは、3の機能を使ってるのではなく、デバッガとしてST-LINKを組み込んだ状態の基板になってる。

297 :774ワット発電中さん:2024/07/25(木) 21:04:39.82 ID:6kkAzLxi.net
最近のNucleo64はST-Linkを切り離せないものがあるんだな。

298 :774ワット発電中さん:2024/07/25(木) 21:12:57.35 ID:/lwQMzpO.net
ずっとESP32やRP2040いじってたから2年ぶりにSTMいじったらすっかり忘れてて
STLINKつながらんーとおもってたらBOOTジャンパ設定してなかったというオチ
F103だとSTLINKとシリアルとあともうひとつ3通りのFLASH更新方法が用意されてるね

299 :774ワット発電中さん:2024/07/25(木) 22:43:51.22 ID:vn+djVM/.net
>>293
通常起動は電源つなぐだけでオッケー
リセット、クロックも内部つかうなら接続しなくていい

書き込み、デバッグは基本はST-LINK
JTAGはチップにより対応

さらにブートローダが用意されてる。これ読んで

https://www.st.com/resource/ja/application_note/an2606-stm32-microcontroller-system-memory-boot-mode-stmicroelectronics.pdf

300 :774ワット発電中さん:2024/07/25(木) 23:54:45.23 ID:/lwQMzpO.net
STMは品種と資料が多すぎるな

301 :774ワット発電中さん:2024/07/26(金) 10:11:18.46 ID:WBwZ+jhz.net
いやならルネサスかTIはどう?

302 :774ワット発電中さん:2024/07/26(金) 10:54:31.84 ID:qewbx97A.net
TIはマイコンあまり上手じゃない気がする
スリープ入れるとデバッガが落ちる奴がある
消費電力とA/Dは優秀だけど

303 :774ワット発電中さん:2024/07/26(金) 11:24:53.23 ID:fNpZeffM.net
>>299
どうもありがとう。
電源つなぐだけで良いならPICと同じだね。知りませんでした。

基板が届いたらいじってみます。
またご指導をお願いします。

304 :774ワット発電中さん:2024/07/26(金) 14:08:32.03 ID:fNpZeffM.net
質問させてください。

タイマー割込をするときに、CubeMXが生成したソースに「__weak ... (...)」という関数があります。
たぶん、weak pull-up抵抗のように
「宣言無しでは困るので、軽く宣言しときます。もし他で誰かが宣言したならそっちに従ってね」
という「弱い宣言」がしてあるものだと思います。
実際にそれを使う時は、__weak...の「...」関数を書くときに
・何か手続き要るのでしょうか? (切り替えることを示す手続きです)
・どこに書いても良いのでしょう? (記述する場所指定がありますか?)
よろしくお願いします。

305 :774ワット発電中さん:2024/07/26(金) 15:08:02.76 ID:X26/deKc.net
ビルドできるならどこでもいい
そっちは優先される

306 :774ワット発電中さん:2024/07/26(金) 17:18:44.56 ID:fNpZeffM.net
>>305
ありがとうございます。
イメージ通りで安心しました。
すると、CubeMXで割込生成したら、GREPで __weak で検索して 1つ1つ確認して行くですかね。
なんか、ちょっと手間ですけど。

307 :774ワット発電中さん:2024/07/26(金) 22:58:35.77 ID:6cgxhcj3.net
>すると、CubeMXで割込生成したら、GREPで __weak で検索して 1つ1つ確認して行くですかね。
ひとつひとつ確認する必要ってあるのかな?

308 :774ワット発電中さん:2024/07/27(土) 21:11:25.79 ID:ywPvtbjf.net
292です。
ダウンロードしたNucleoの回路図の見方を教えてもらえないでしょうか。
https://imgur.com/Mm5B3aG.jpg
回路図の一部画像です。

1) ?の「D10」とかの文字は何を示しているのでしょうか?
2) 説明文字の色が、青色と赤色に変えてあります。これはどのように違いがあるのでしょうか?
いくつもすみません。
宜しくお願いします。

309 :774ワット発電中さん:2024/07/27(土) 22:15:33.79 ID:PAVjAQAx.net
1) Arduinoコネクタの対応ピン名
2) Nucleoは同じ基板にいろいろなマイコンを載せているので、「あるピン」にマイコンによって異なる
機能が割り当てられているものだと、回路図としてはごちゃごちゃしてしまう。
色とかフォントとか注釈で説明しようとしているけれど、ややこしい。

この回路図だけでわかろうとしてはいけない。

使うマイコンのデータシートで、そのピンの実際の機能を確認するべき。

310 :774ワット発電中さん:2024/07/28(日) 03:51:04.45 ID:Fr3Cpj8K.net
>>309
どうもありがとうございました。
わかりやすい説明で、ためになります。
Arduino用の説明文字ですね。納得しました。そんなことで躓いています。

>回路図としてはごちゃごちゃしてしまう。
>色とかフォントとか注釈で説明しようとしているけれど、ややこしい。
そうですね。今日、基板が届いたんですが、自分MCU用の回路図に修正していたら
1日が終わってしまい、結局コンパイルまで行けませんでした。
機種依存のポート番号で、また兼用ピンも多いので、大変苦労しました。

ちなみに、GPIO1にHighを出力するときのコードは、
HAL_GPIO_WritePin (GPIOA, GPIO_PIN_1, GPIO_PIN_SET)だそうですが、
結構長い記述だなと思います。PICの話で恐縮ですが、PICだと
PORTA = 0x1234; とか RA0 = 0; とか、if( RA1 == 1 ){ とか書いていたので
短い記述でわかりやすかったです。

どうもありがとうございました。

311 :774ワット発電中さん:2024/07/28(日) 12:21:48.67 ID:mmi0KKV/.net
>>310
defineでマクロ

312 :774ワット発電中さん:2024/07/28(日) 17:21:22.00 ID:WfnhiFS6.net
>>310
それが抽象化というもの
知らんけど

313 :774ワット発電中さん:2024/07/30(火) 02:47:19.88 ID:XCgdymRs.net
>>293です。
おかげさまで、やっとLチカができました。
ありがとうございます。

ところが、機能を追加しようと、再度CubeMXで生成したら、
前回までのmain()の中身が消えてしまいました。ちょっとびっくりです。
消えないような設定はありますでしょうか。

314 :774ワット発電中さん:2024/07/30(火) 06:49:24.36 ID:8N4kFlj3.net
>>313
ソースコード内に、ユーザコードを埋め込む位置が明記されてるでしょ。
そのエリア外は上書きされるよ。

315 :774ワット発電中さん:2024/07/30(火) 12:28:26.75 ID:XCgdymRs.net
>>314
ありがとうございました。やってみたら、確かに残っていました。
どうもありがとうございました。大変助かりました。

/*  */ でコメントなので関係無いのかと思ったのですが、
ちゃんとコンパイラが見ているんですね。

316 :774ワット発電中さん:2024/07/30(火) 13:53:09.89 ID:XCgdymRs.net
delayの時間を変えたりして、だんだん面白くなってきました。

質問お願いします。
ソースを修正後に、フルコンパイルは CTRL+B というショートカットでできましたが、
「コンパイル→転送書込→実行」の「緑三角ボタン」を
キーボードから行うショートカットか何かって、ありますでしょうか。
CTRL+○とか、ALT+○○→G とかです。
よろしくお願いします。

317 :774ワット発電中さん:2024/07/31(水) 15:59:21.09 ID:A4YVwaFo.net
>>293です。すみません、また教えてください。
下の画像を見てください。適当なSTM32のデータシートの一部です。
https://imgur.com/kKhhCjd.jpg
GPIOのピン機能を表した図ですが、
Alternate functionとAdditional functionに、欄が分けてあります。
結局どの機能でも使用できると思いますのに、どうして表が分かれているのでしょうか。
Alternateは代替、Additionalは追加ですよね。全部まとめてAlternate functionで良いと思うのです。
気にせずにGo!で良いのでしょうか。

318 :774ワット発電中さん:2024/07/31(水) 19:01:28.11 ID:0VhQPiaA.net
>>317
Alt. は、その機能に切り替え可能なもの。

Add. ば、この機能を併せ持ってるもの。
大抵はGPIOに対してADCの入力。
他にもI2Cに対してSMBus機能。

319 :774ワット発電中さん:2024/07/31(水) 21:58:58.33 ID:A4YVwaFo.net
>>318
どうもありがとうございます。
了解しました。大半助かります。

どちらにしても、使える機能ということで、
分け隔てなく覚えることにします。

どうもありがとうございました。

320 :774ワット発電中さん:2024/08/01(木) 12:32:58.72 ID:Y3iNvxkM.net
>>293です。何度もすみません。質問させてください。

CubeIDE→NucleoF302R8で学習しているのですが、書込の方法について教えてください。

自分なりに調べた結果、今Nucleo評価基板に書込みが出来ているのは、
CubeIDE→(USB)→Nucleo付属STLink基板(折る部分, SWDで)→STM32という経路のようでした。
SWDであるということは、以下で確認しました。
https://imgur.com/dX5HpOV.jpg

ところが、Nucleoの回路図を見ると、USART2も、JTAGも、パターン接続されています。

ここで質問なんですが
1) SWDで行うなら、SWDIO, SWCK 以外のピン(USART2、JTAG)は
  配線しなくても良いと考えれば良いでしょうか。(GPIOピンが増えるということです)

2) ネットを検索すると、SWD方式で NRESET (たぶんreset信号?)も
  配線している人と配線していない人がいます。どちらが正解なのでしょうか?

宜しくお願いします。

321 :774ワット発電中さん:2024/08/02(金) 11:18:13.91 ID:j/x6IO6f.net
>>320

1) 基本はSWDIO, SWCLKとGNDで良し(SWDIO, SWCLKはJTAGの一部)
更にSWOを接続するとSTLINK単体でprintfのデバッグができる
自分はJTAG4本は必ず配線して、JTAGでもSWDでもOKにしています

2) NRSTは配線したほうが良いです
配線していない場合、例えばRESET後早めにSLEEPするファームを
書き込むとSTLINKが動けなくなります
デバッグ設定で「Connect under reset」があるのはそのためです

322 :774ワット発電中さん:2024/08/02(金) 18:57:22.43 ID:6OT8nFAr.net
>>321
ありがとうございます。

>1) 基本はSWDIO, SWCLKとGNDで良し
2) NRSTは配線したほうが良いです
そうなんですか。
おすすめならRESETも配線して、
+電源は配線不要でしょうから、
・SWDIO
・SWCLK
・NRESET
・GND   の4本ですね。

>(SWDIO, SWCLKはJTAGの一部)
ありがとうございます。これがまたわかりにくいです
2〜3のEVAボードの回路図を見ても、いつも「/」で兼用してあります。
追々べんきょうしていきます。

>更にSWOを接続するとSTLINK単体でprintfのデバッグができる
ありがとうございます。これはいいことを聞きました。
これまではprintf()のためにUARTが複数あるマイコンを選んでいました。
STLinkがprintf()を担ってくれるなら、とても助かります。

ありがとうございます。お礼が遅くなってすみません。

323 :774ワット発電中さん:2024/08/04(日) 22:49:28.58 ID:4TLE1Fsz.net
>>322

320です

NucleoからSTLINKを切り離したり、STLINK/V2なとを使う場合は
VDD電源も必要

書き方が悪かったです
SWDIOはJTAGのJTMS、SWCLKはJTAGのJTCKと共通線です
MCUデバッグ回路は、JTAGで起動してSWDに切り替えます

SWOは「SWO SWV」で検索すれば沢山出てきます

324 :774ワット発電中さん:2024/08/06(火) 16:45:33.48 ID:tI6T/K6+.net
異常が見当たらなければ含みは幻!

325 :774ワット発電中さん:2024/08/06(火) 16:48:21.96 ID:b1cJhnXL.net
>>305
糖尿病薬全般に言えることだ
むしろ育成が問題ではないか?

326 :774ワット発電中さん:2024/08/06(火) 16:57:43.23 ID:w3U0v9Le.net
それ作ったフリーソフト並のゲーム差無し優勝が1番出てるけど
過疎配信者はどんどん離れていくうちにめっちゃ嫌われてるからだろ

327 :774ワット発電中さん:2024/08/06(火) 17:07:06.45 ID:b856nbHO.net
仮病も使いたくなるから、アマゾン内のストアへの電話かどうか
かなり気を使うってのも全部噂話や都市伝説だったって判断出来るの?
めっちゃ使いにくい
ちゃんとさせなきゃ…

328 :774ワット発電中さん:2024/08/06(火) 17:16:49.26 ID:e9vB4bZn.net
自力で逃げれたのに陰キャも来たらますます臭くなるらしい。
https://6v7g.dj3e.ovpi/4Sth5pA/elH8NjnRY

329 :774ワット発電中さん:2024/08/06(火) 17:26:11.50 ID:IifBt23r.net
>>240
急な仕事するから、イオンモール1711円でプラテンするわ
他全滅

330 :774ワット発電中さん:2024/08/06(火) 18:20:03.64 ID:JUWesv/6.net
童貞が好きなオッサンアニメ見るか?
https://ewk.ps47/PyXvu/Z7kCu1Cu

331 :774ワット発電中さん:2024/08/06(火) 18:26:26.44 ID:5s+y4eMc.net
そんなことがまかりとおる訳ないんだよ
今後増えるかどうかは知らんで逃げ遅れた

332 :774ワット発電中さん:2024/08/06(火) 18:33:53.80 ID:uI8Xe2yM.net
>>186
厳しい
俺が言いたい事ができた!575→575同値撤退
初動ゲット以外はどうなるか楽しみ

333 :774ワット発電中さん:2024/08/06(火) 18:39:11.13 ID:eIZNMex7.net
ネットスラングには裁けないことは痺れ切らしたってことだ
ほんと
土日休みて地獄だな
これは正常な反応らしい
10から40くらいが最適らしいので
https://i.imgur.com/lmWBk7o.jpg
https://i.imgur.com/HhEOsjf.png

334 :774ワット発電中さん:2024/08/07(水) 11:13:10.94 ID:AXYfG91T.net
>>323
ありがとうございます。

>NucleoからSTLINKを切り離したり、STLINK/V2なとを使う場合は
>VDD電源も必要
そうですか。VDDの合わせて配線したいと思います。
・VDD
・SWDIO
・SWCLK
・NRESET
・GND   の5本ですね。
VDDは、書込時のマイコンへの電力供給ではなくて、
マイコンに電源が入っているか、の確認のためですかね。
  (PICではそういう話になっています)
これを機に、秋月でSTLINK-V3MINIEというのを買いました。
これで書込ができる必要線をきめて、今後つかっていこうかと思います。

>SWDIOはJTAGのJTMS、SWCLKはJTAGのJTCKと共通線です
>MCUデバッグ回路は、JTAGで起動してSWDに切り替えます
ありがとうございます。
SWDはJTAGの機能限定の書込方式みたいですね。
特殊電子回路のページに、そんなことが書いてありました。
経緯を知ると面白いです。
返信が遅くなってすみませんでした。
どうもありがとうございました。

335 :774ワット発電中さん:2024/08/07(水) 19:02:45.35 ID:XgQ+VWn+.net
殺伐としたスレばかり見てた中、

このスレの
相談者の真面目さ丁寧さと
回答者の親切さに和んだw

336 :774ワット発電中さん:2024/08/07(水) 22:13:56.86 ID:2ffFrt6h.net
>>333
グロ

337 :774ワット発電中さん:2024/08/08(木) 11:05:16.03 ID:MlXu99+5.net
>>334

322です

>VDDは、書込時のマイコンへの電力供給ではなくて、
>マイコンに電源が入っているか、の確認のためですかね。
その通りです
(PICkitは微弱なら供給できた気がします)

https://imgur.com/a/LguvksT
自分が作ったアダプタの接続図です
このアダプタを秋月D基板に組んで、デバッグ基板はXHコネクタで接続しています
JTAGが10ピンなのは、STLINK以前のJTAG回路の都合です

338 :774ワット発電中さん:2024/08/09(金) 12:17:21.95 ID:NilzC2tv.net
>>337
結線表ありがとうございます。
購入したSTLINK→SWDへの結線も書かれているので、
僕もこのように配線してみます。盆休みに試してみます。
SWD-6pinとJTAG-10pinの違いはTDIのみ、
STLINK側にはVDDは未使用で、VPPが2本もありますので、
VPPから電源供給もできる(できた)のでしょうね。

>(PICkitは微弱なら供給できた気がします)
そうです、50mAだったかな。他の回路もあり50では足りないので
供給したことはないです。
どうもありがとうございました。

339 :774ワット発電中さん:2024/08/11(日) 18:50:16.85 ID:QfhkDeTI.net
>>336
構うな
いろんなとこでやっtるスクリプトグロ張りだから

104 KB
新着レスの表示

掲示板に戻る 全部 前100 次100 最新50
名前: E-mail (省略可) :

read.cgi ver.24052200