質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
マイコン

マイクロコンピュータの略で、CPUにマイクロプロセッサを用いたコンピュータのこと。家電製品、電磁機器などの制御に用いられています。単体でコンピュータとしての機能を一通り備えています。 現代のパーソナルコンピュータに近く、同時期のメインフレームやミニコンピュータと比べ、小さいことが特徴です。

Q&A

3回答

1679閲覧

組込みプログラマー初心者

退会済みユーザー

退会済みユーザー

総合スコア0

マイコン

マイクロコンピュータの略で、CPUにマイクロプロセッサを用いたコンピュータのこと。家電製品、電磁機器などの制御に用いられています。単体でコンピュータとしての機能を一通り備えています。 現代のパーソナルコンピュータに近く、同時期のメインフレームやミニコンピュータと比べ、小さいことが特徴です。

0グッド

2クリップ

投稿2017/10/25 03:36

編集2017/10/25 03:45

タイトルの通り、新人組込みプログラマーです。
最近、組込みのプロジェクトに入ったのですが
知識がなく苦労してます。
以外、私のスキルを記載します。

c言語(入門書程度)
回路図は読んだことがない。
マイコンのプログラミング経験なし。

おすすめの参考書やサイトはありますでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kimurayu

2017/10/25 03:46 編集

何に苦労しているのか記載してください
退会済みユーザー

退会済みユーザー

2017/10/25 03:46

回路図を渡されたのですが、読み方が分からず苦労してます。
kimurayu

2017/10/25 03:52

何の回路図ですか?
退会済みユーザー

退会済みユーザー

2017/10/25 03:53

マイコンのです。
kimurayu

2017/10/25 03:57 編集

マイコンの種類は何ですか?
ozwk

2017/10/25 04:01 編集

回路図から何を読みとれ、という指示なんですか?
退会済みユーザー

退会済みユーザー

2017/10/25 09:02

LEDの点滅をしたいです。
guest

回答3

0

samohan1987さん、

どんなプロジェクトも、なんかしら入力をマイコンが受けとって、判断・処理して、うまいタイミングで結果を出力をする、ってことをしますよね。
入力は、ボタンだったり、タイマーだったり、センサーだったり。
出力は、LED・画面へ表示やら、メモリやファイルへの保存やら、PWMの信号生成だったり。

そういうやつの、細かくブレイクダウンしていった、入力・出力が、基板上のチップ同士で行わます。
いまは、SOC(System-on-a-chip)とよばれる、いろんな機能を1つのマイコンに詰め込んでるものが主流だと思いますが、これだと、このチップの中のユニット同士でも、入力・出力が行わます。

マイコンを中心にみていくと、(特殊な用途でなければ)だいたい汎用的なインターフェースで、ほかのチップや機器と接続してると思います。
汎用的なI/Fとしては、基板上の部品同士の接続として、

  • Digital IO(DIO, GPIO)
  • A/D converter(ADC),
  • SPI(Serial Peripheral Interface)
  • I2C,
  • PWM(Pulse Width Modulation)など、

外部との機器との接続では

  • SDカード
  • USB,
  • Ethernetなど

があるので、このへんの知識をちょっと頭に入れてから、

  • どのようなインターフェースで、接続しているか、
  • 入力・出力は、マイコン側か、周辺の部品・チップ側か
  • どのようなデータがやり取りされるか、

といったことを確認しながら、回路図を見ていくといいんじゃないかな、と思います。

色鉛筆をもって、赤は、I2Cで、マイコンがセンサーとつながってる、青はCSIでカメラ、紫は、... というような感じで、回路図上の線を追って(塗って)いくのも、一度やっておくっといいかもしれません。

プログラマから、としてみると、
- ADCでは、端子の電圧から、12bit精度のものであれば、0~4095の値を取得できる、

  • DIO端子は、1か0の入力を読み取る、または、出力する、
  • I2C, SPIであれば、部品の仕様にある、データを読み出したり、書き込んだり、

といった感じになるので、回路の細かいところは見なくても、このパーツがどのようなデータの値を出力して、マイコンが受け取るか、または、マイコンからどういったデータを提供するか、というくらいが分かれば、どうにかなるんじゃないかと思います。

で、質問の

おすすめの参考書やサイトはありますでしょうか。

ですが、具体的に書かれている内容が少ないので、何とも言えません。
"組み込み"といっても、いまは、

  • Linuxベースのもの
  • RTOS(リアルタイムOS)
  • OSなし(メインループ一つで、割り込みなど使用)
  • (上のをミックス。複数のプロセッサ使用などで)

のように、プロジェクトの規模、使えるRAMサイズ(数百MB ~ 数百~数十キロバイト ~ 数キロバイトなど)でも全く環境が違ってくると思います。

チームに誰かしら、経験豊富な方がいれば、お話しをして、(今回のプロジェクトに関する)アドバイスをもらうのが、いいんじゃないでしょうか。

投稿2017/10/25 07:06

mt08

総合スコア1825

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

参考書はgoogle先生です。
組み込みといっても幅が広すぎます。
Web系で参考書は何がいいですか?ってくらい広すぎます。
OSが入っているならまずは、OSを調べる。
OSレスだったら、マイコンのデータシートを見て
マイコンにどんな機能があるかを調べてみましょう。
参考書は買うまでもなく、googleでほとんど大丈夫と思います。

投稿2023/03/14 00:11

temtem

総合スコア29

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

こんにちは。

組み込みの学習を自力で行うのに適切なサイトは意外に多数あります。
選択の余地があるので、なるべくsamohan1987さんに適切なところを選んだほうが良いと思います。
可能であれば、実際に業務で使うCPU向けの入門書やサイトが良いですよ。
使用するCPUがATEMLやPICなら、そのCPUの型番で検索すると解説サイトがでてくることが多いです。
NEC、富士通、東芝、Renesas等の日本のメーカなら、そのメーカ自身が入門を用意している場合もありますし、セミナーがあることもあります。職場の先輩や上長に聞くと良いように感じます。

回路についてはオームの法則とダイオード、トランジスタを把握していれば結構足ります。中学理科で出てくるようですので、昔の教科書を見るなどして思い出すと良いかも知れません。

投稿2017/10/25 04:04

Chironian

総合スコア23272

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問