IT
はじめに 書籍 基礎から学ぶ 組込みRust 実践Rustプログラミング入門 オンラインドキュメント The Embedded Rust Book (和訳) Github Rust Embedded(英語) Github Awesome Embedded Rust(英語) はじめに 組込みRustに関連する情報がいろいろ散らばっているよ…
はじめに なぜJavaScript以外でも実行できると記載されたのか チュートリアルをやりました 1. Loop and import 2. Simple move 3. First attack 4. Creeps bodies 5. Store and transfer 6. Terrain 7. Spawn creeps 8. Harvest energy 9. Construction 10. …
はじめに テスト駆動開発による組み込みプログラミング ―C言語とオブジェクト指向で学ぶアジャイルな設計で組込みTDDを勉強中です。本書ではC専用テストハーネスとして、Unityが紹介されています。これの環境構築を行います。ゲームじゃないほうです。github…
はじめに フーリエ級数展開から周波数解析までの地図 必要な数学的知識 参考 参考書籍 高速フーリエ変換までの概観 実装練習 解析ごとの参考 その他参考 おわりに はじめに 昨年、基礎から学ぶ 組込みRust、Interfaceの2冊に出会いました。いずれも組込みの…
はじめに 環境 処理時間の計測方法 1. stm32f4xx_halで提供されているタイマーで時間を計測します。 2. 設定した周期で割り込みが発生します。 3. 割り込み処理で時間計測用のカウンタをインクリメントします。 4. 計測したい処理の開始と終了でカウンタを参…
はじめに ソースコード 解読 Attributes #![deny(unsafe_code)] #![no_main] #![no_std] #[entry] Crates panic_halt cortex_m cortex_m_rt stm32f4xx_hal stm32f4xx_hal::prelude::* crate::hal::{stm32}; main() main() -> ! { loop {} } Peripheralsの取…
はじめに 概要 ST Nucleo Board STM32F411RET6とは 開発環境の構築 Rustのインストール Rustのクレートの追加 クロスコンパイル環境の構築 Lチカプロジェクトの構築 Lチカコードのコピペ examples/delay-blinky.rs Cargo.toml .cargo/config memory.x Lチカ…
はじめに ターゲットデバイスとは 1. 初期費用が安い 2. クロス開発環境が整っている 3. Pythonが使える 4. Lチカまでの丁寧な解説動画がある 5. 組み込み入門のハードウェアインターフェースが十分 注意!マイクロ usb ケーブルはデータ転送対応のものを利…
はじめに XFDとは? 作ったもの 構成 環境 概要説明 わかったこと XFDの試作にRaspberry Piは便利 Rustのcrateが優秀なことを実感 Raspberry Pi3でRustの開発はしんどい やってみたいこと リファクタリング 監視端末とフィードバックデバイスの分離 フィード…
はじめに やったこと コマンドライン引数の処理 計算ロジックの実装 ユニットテストの記述 エラーハンドリング 気づいたこと おわりに はじめに 実践Rustプログラミング入門のChapter4を写経しました。その感想です。ソースコードは下記githubにあります*1。…
はじめに 組み込みシステムとは 機械制御を目的とした情報システム 表記 おわりに はじめに ソフトウェアエンジニアの一つとして組み込みエンジニアという職種があります。ソフトウェアエンジニアが開発する情報システムの分類の一つと位置付けられます。プ…
関数ポインタの利用 fn double(n: i32) -> i32 { n + n } fn abs(n: i32) -> i32 { if n >= 0 { n } else { -n } } fn main() { // doubleの関数ポインタをfへ束縛 let mut f: fn(i32) -> i32 = double; assert_eq!(f(-42), -84); // absの関数ポインタをfへ…
はじめに 環境 OpenJDK 11とEclipseのインストール Google Testのインストール EclipseとGoogle Testの連携 1. includeディレクトリの指定 2. ライブラリパスの指定 3. ライブラリの追加 Google Testの利用 おわりに はじめに 2013年に発売されたモダンC言語…
はじめに 私は組み込みシステムを開発しているのですが、組み込みシステムの上位概念と同位概念は何になるだろうか?と疑問に思い整理しました。ソフトウェアエンジニアを目指す方のヒントとかになれば幸いです。 情報システム a formal, sociotechnical, or…
0. はじめに 1. ランレングス圧縮(Run Length Encoding)とは 2. ランレングス圧縮の効果 大きな入力データを圧縮できる 連続する同じ文字とその個数に着目するができる 変化点のみに着目することができる 3. ランレングス圧縮の魅力 4. ランレングス圧縮関…
はじめに A - Air Conditioner B - Distance C - Repsept D - Alter Altar コンテストを振り返って おわりに atcoder.jp はじめに AtCoder Beginner Contest 174で2ヶ月ぶりにHighest更新しました。 yu2ta7kaさんのAtCoder Beginner Contest 174での成績:37…
はじめに A - Payment B - Judge Status Summary C - H and V D - Chat in a Circle おわりに atcoder.jp はじめに AtCoder Beginner Contest 173で久しぶりに3完しました。 順位 5302nd / 10750 パフォーマンス 638 レーティング 502 → 517 (+15) Contest R…
先週末2回のAtCoderコンテストでレーティングを下げることしかできず、いろいろ思うことがあり、適当に書き散らかします。緑に向けて過去問解いたり、螺旋本解いたりしていればそれなりに上がっていくだろうと思っていましたが、甘かった。特に問題に対する…
はじめに モチベーション 面白さ 精進 1. AtCoder Problemsのrecommendを解く 2. 競プロ参考書を読んだり実装したりする(今は螺旋本) 3. けんちょんさんの記事をめっちゃ読む 4. 参加コンテンストの復習(pdf,動画,他者解答の確認) 5. 自分のレベルを把握…
はじめに 実装 使用例 制御の名前 おわりに ちなみに はじめに 競技プログラミングの問題でキーごとに出現回数をカウントするシーンが多くあります。この制御をC++のstd::mapを使って実装します。 実装 #include <map> using namespace std; template <typename K, typename V, typename A> void map_c</typename></map>…
A問題 B問題 C問題 D問題 おわりに atcoder.jp AtCoder Beginner Contest 164に参加しました。C問題までは解けて、D問題は一時間以上かけてもわからずゲームオーバー。それでもC問題までをWAなくそれなりの速度で解けたため、パフォーマンスが自己ベスト更新…
はじめに BinaryHeapについて 実装 隣接行列を用いた実装 優先度付きキューを用いた実装 参考 はじめに 最短経路を求めるアルゴリズムとして有名なダイクストラ法をRustで実装しました。ダイクストラ法は隣接行列を用いるとO(|V|^2)ですが、優先度付きキュー…
A,B問題 C問題 D問題 この問題で使えた技 コンテスト中に新しく出せたコマンド おわりに 蛇足 AtCoder Beginner Contest 160に参加しました。Cまでは解けて、D問題がわずか1分のタイムオーバーで非常に悔しく楽しい回でした。 atcoder.jp A,B問題 WAもなくス…
要約 問題概要 解法 危険な実装(ダメ絶対) 構造体を使った安全なコード*1 static mut を使った危険なコード 参考 要約 DFS(深さ優先探索)の勉強としてAtCoder Beginner Contest 015 C問題をピックアップ。 グローバル変数を使った解答例を模倣してstatic…
2020年3月16日に開催されたAtCoder Beginner Contest 157に参加しました。C問題が解けず非常に悔しかったです。解説などを見てようやくACし、その中の学びをふりかえっておきます。 【結果】 順位 4126th / 6597 パフォーマンス 411 レーティング 105 → 135 …
rustlingsとは Rustを実際に読み書きしながら学んでいくエクササイズツールです。具体的には、rustlingsを起動するとソースコードのエラーが表示され、そのエラーを解消しコンパイルに成功させることが目標になります。そして、その過程でRustを学んでいきま…
はじめに 問題 ローマ数字の表記法の特徴 アルゴリズム 実装 もう少しやりたいこと 勉強になったこと まだよくわかっていないこと 参考 おわりに はじめに 突然ですが、画像は何巻の美しいシャナかご存知でしょうか? ローマ数字で表記されている通り19巻で…
はじめに 開封確認 使った感触 仕様 他のレビュー記事 おわりに はじめに 10月にSurface Goを購入し、拡張ディスプレイも欲しいと思っておりました。ちょうどCyber Mondayの機会が巡ってきたのでいろいろ悩んだ末にLepow をポチりました。15,000円也。 開封…
はじめに ソースコード全文をコピペできていなかった 利用すべきcrateバージョンがよくわかっていない おわりに ソースコード CrateのバージョンNG時のエラーメッセージ はじめに Rust CookbookのParse the MIME type of a HTTP responseでハマったので、そ…
開き方 Win+x→コントロールパネル→ハードウェアとサウンド→サウンド→メッセージ(情報) 参考 Windows10の警告音をOFFにする - Qiita