Skip to content

Instantly share code, notes, and snippets.

@mroger
mroger / html5_phone_regex
Last active December 19, 2015 13:29
Exemplo de validação de telefone usando regex em form HTML 5.
<!DOCTYPE html>
<html>
<head>
<title>HTML5 Form Validation</title>
</head>
<body>
<form action='teste.asp'>
Telefone:
<input
type="text"
@mroger
mroger / logback.xml
Created July 17, 2013 01:10
Arquivo de configuração simples de exemplo do logback com ativação do JMX.
<?xml version="1.0" encoding="UTF-8" ?>
<configuration scan="true" scanPeriod="3 seconds">
<jmxConfigurator />
<statusListener class=
"ch.qos.logback.core.status.OnConsoleStatusListener"/>
<appender name="STDOUT"
class="ch.qos.logback.core.ConsoleAppender">
class TEA5767N {
private:
//...
byte transmission_data[5];
byte reception_data[5];
//...
public:
//...
@mroger
mroger / transm_const.cpp
Created August 23, 2014 00:48
Transmission data initialization and its call from constructor.
TEA5767N::TEA5767N() {
Wire.begin();
initializeTransmissionData();
}
void TEA5767N::initializeTransmissionData() {
transmission_data[FIRST_DATA] = 0;
transmission_data[SECOND_DATA] = 0;
transmission_data[THIRD_DATA] = 0xB0;
transmission_data[FOURTH_DATA] = 0x10;
@mroger
mroger / mute_transm.cpp
Last active August 29, 2015 14:05
Example showing how to mute changing only one bit.
void TEA5767N::mute() {
setSoundOff();
transmitData();
}
void TEA5767N::setSoundOff() {
transmission_data[FIRST_DATA] |= 0b10000000;
}
void TEA5767N::transmitData() {
@mroger
mroger / set_sound_on.cpp
Last active August 29, 2015 14:05
Snipet showing how to set the sound on.
void TEA5767N::setSoundOn() {
transmission_data[FIRST_DATA] &= 0b01111111;
}
@mroger
mroger / load_freq_status.cpp
Last active August 29, 2015 14:05
Shows how to update transmission data after status bytes are read in reception_data
void TEA5767N::loadFrequency() {
readStatus();
transmission_data[FIRST_DATA] = (transmission_data[FIRST_DATA] & 0xC0) | (reception_data[FIRST_DATA] & 0x3F);
transmission_data[SECOND_DATA] = reception_data[SECOND_DATA];
}
void TEA5767N::readStatus() {
Wire.requestFrom (TEA5767_I2C_ADDRESS, 5);
@mroger
mroger / select_frequency_hilo.cpp
Created August 23, 2014 02:37
Shows the algorithm to get que optimal Hi/Lo injection prior to a select frequency command.
void TEA5767N::selectFrequency(float frequency) {
calculateOptimalHiLoInjection(frequency);
transmitFrequency(frequency);
}
void TEA5767N::calculateOptimalHiLoInjection(float freq) {
byte signalHigh;
byte signalLow;
setHighSideLOInjection();
@mroger
mroger / set_frequency.cpp
Created August 23, 2014 02:44
Shows the calculation of the PLL information
void TEA5767N::transmitFrequency(float frequency) {
setFrequency(frequency);
transmitData();
}
void TEA5767N::setFrequency(float _frequency) {
frequency = _frequency;
unsigned int frequencyW;
if (hiInjection) {
@mroger
mroger / search_stop_level.cpp
Created August 23, 2014 13:11
Search stop level constants.
#define LOW_STOP_LEVEL 1
#define MID_STOP_LEVEL 2
#define HIGH_STOP_LEVEL 3