###前提・実現したいこと
AtmelStudioを使ってC言語のコードを書いています。
実装したいこととしては、CdSセルを使ってLEDライトの明るさを制御することです。
マイコンは「ATSAMl21E16B」を使用しています。
以下、コード作成の参考にしているサイトです。
SAM Port (PORT) Driver
Quick Start Guide for PORT - Basic
###発生している問題・エラーメッセージ
Lチカを行うことはできたのですが、ここからどのようにCdSセルで制御するためのコードにしていけば良いかわからず困っています。
###該当のソースコード
Lチカのコード
C
1/** 2 * \file 3 * 4 * \brief Empty user application template 5 * 6 */ 7/** 8 * \mainpage User Application template doxygen documentation 9 * 10 * \par Empty user application template 11 * 12 * Bare minimum empty user application template 13 * 14 * \par Content 15 * 16 * -# Include the ASF header files (through asf.h) 17 * -# Minimal main function that starts with a call to system_init() 18 * -# "Insert application code here" comment 19 * 20 */ 21/* 22 * Include header files for all drivers that have been imported from 23 * Atmel Software Framework (ASF). 24 */ 25/* 26 * Support and FAQ: visit <a href="http://www.atmel.com/design-support/">Atmel Support</a> 27 */ 28#include <asf.h> 29#define LED_0_PIN 16 30 31void configure_port_pins(void); 32int main (void) 33{ 34 system_init(); 35 configure_port_pins(); 36 /* Insert application code here, after the board has been initialized. */ 37 while (true) { 38 bool pin_state = 1; 39 port_pin_set_output_level(LED_0_PIN, pin_state); 40 } 41} 42void configure_port_pins(void) 43{ 44 struct port_config config_port_pin; 45 port_get_config_defaults(&config_port_pin); 46 config_port_pin.direction = PORT_PIN_DIR_OUTPUT; 47 port_pin_set_config(LED_0_PIN, &config_port_pin); 48} 49
###試したこと
Arduino開発環境でCdSセルを使ってLEDライトの明るさを制御するということは行いました。
以下参考資料です。
C++
1int val=0; //入力される値を格納する為の変数 2void setup() { 3Serial.begin(9800); //モニターに出力するための設定 4} 5void loop() { 6//ANALOG INの0番ピンからデータを受け付ける 7val=analogRead(0); 8Serial.println(val/4); //入力された値をモニターに出力 9analogWrite(3,val/4); //入力された値÷4の値をアナログ出力する 10delay(100); 11}
###補足情報(言語/FW/ツール等のバージョンなど)
回路では2ピンにCdSセルが、16ピンにLEDライトが繋がっています。
回答3件
あなたの回答
tips
プレビュー