Gostaria de obter ajuda como popular controle (html) Select com dados vindos do Banco de Dados, através do PDO::FETCH_ASSOC. 
Como estou trabalhado orientado a objetos, tenho uma classe que retorna um array, com os dados de minha tabela. Consigo listar esses dados com o print_r ou com o var_dump, porém ao tentar carregar esse dados no elemento <option> do controle <select> do html, só retorna o primeiro registro. 
Vejam o código: 
  
classe membro 
 public static function carregaestado(){       
        $conect = conexao::conn();
        try{
        $sql = $conect->prepare("SELECT * FROM estado");
        $sql->execute();
        
        if($sql->rowCount()>0):
        $dados = $sql->fetchAll(PDO::FETCH_ASSOC);                 
        return $dados;
          else:
              return false;
          endif;
        }
    catch (PDOException $e){
        echo "erro ao carregar estados do banco de dados!".$e->getMessage();
    }
  
  
  
controle select 
  <select name="uf" id="uf" class="impcadastro-D"> 
                                <?php 
                                foreach (membro::carregaestado() as $dados_empresa){
                                    $codigo = $dados_empresa['IDestado'];
                                    $estado = $dados_empresa['ESTADO'];
                                    ?>
                                    <option value="<?php echo $codigo; ?>"><?php echo $estado."<br/>" ?></option>;
                                            
                                <?php }
                                    
                                ?>                           
                                                      
                                </select>
 
Onde eu estou errando?
agradeceria muito o apoio de algum programador mais experiente.